Google Objectron Dataset

Estimated reading: 7 minutes 200 views

Visualization of the Objectron bike training set dataset in the Deep Lake UI

Objectron dataset

What is Objectron Dataset?

The Objectron dataset consists of several short, object-centric video clips where the camera steadily moves around the object and captures it from different angles. The videos contain manually annotated 3D bounding boxes describing the object’s position, orientation, and dimensions. The dataset also comes with the metadata from AR sessions, including camera poses, sparse point clouds, and characterization of the planar surfaces from the surrounding environment. The dataset is collected from 10 countries across five continents, thus ensuring geo-diversity. It consists of 17,095 object instances with 14,819 annotated video clips complemented with 4M annotated images in the following categories: bikes, books, cameras, cereal boxes, chairs, cups, laptops, and shoes.

Download Objectron Dataset in Python

Instead of downloading the Objectron dataset in Python, you can effortlessly load it in Python via our Deep Lake open-source with just one line of code.

Load Objectron Dataset Training Subset for the Category Book in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_book_train")
				
			

Load Objectron Dataset Testing Subset for the Category Book in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_book_test")
				
			

Load Objectron Dataset Training Subset for the Category Bike in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_bike_train")
				
			

Load Objectron Dataset Testing Subset for the Category Bike in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_bike_test")
				
			

Load Objectron Dataset Training Subset for the Category Bottle in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_bottle_train")
				
			

Load Objectron Dataset Testing Subset for the Category Bottle in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_bottle_test")
				
			

Load Objectron Dataset Training Subset for the Category Camera in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_camera_train")
				
			

Load Objectron Dataset Testing Subset for the Category Camera in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_camera_test")
				
			

Load Objectron Dataset Training Subset for the Category Cereal box in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_cereal_box_train")
				
			

Load Objectron Dataset Testing Subset for the Category Cereal box in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_cereal_box_test")
				
			

Load Objectron Dataset Training Subset for the Category Chair in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_chair_train")
				
			

Load Objectron Dataset Testing Subset for the Category Chair in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_chair_test")
				
			

Load Objectron Dataset Training Subset for the Category Cup in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_cup_train")
				
			

Load Objectron Dataset Testing Subset for the Category Cup in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_cup_test")
				
			

Load Objectron Dataset Training Subset for the Category Shoe in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_shoe_train")
				
			

Load Objectron Dataset Testing Subset for the Category Shoe in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_shoe_test")
				
			

Load Objectron Dataset Training Subset for the Category Laptop in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_laptop_train")
				
			

Load Objectron Dataset Testing Subset for the Category Laptop in Python

				
					import deeplake
ds = deeplake.load("hub://activeloop/objectron_laptop_test")
				
			

Objectron Dataset Structure

Objectron Data Fields
  • camera_extrinsics: tensor containing row major 4×4 transformation matrix describing the camera pose w.r.t. the world origin. The world origin is where the AR session has started.
  • camera_intrinsics: tensor containing row-major 3×3 intrinsic matrix describing the focal length and the principal point of the camera.
  • camera_projection: tensor containing row major 4×4 projection matrix.
  • camera_view: tensor containing row major 4×4 view matrix.
  • object_orientation: tensor containing string indicating the orientation of the camera (portrait, landscape).
  • object_scale: tensor containing list of object scales.
  • object_translation: tensor containing list of object translations.
  • object_visibility: tensor containing list of annotation visibilities.
  • plane_center: tensor containing center point for the ground plane where objects are sitting on.
  • plane_normal: tensor containing the normal vector to the ground plane where objects are sitting on.
  • point_2d: tensor containing float numbers of all 2D points.
  • point_3d: tensor containing float numbers of all 3D points.
  • point_num: tensor containing point numbers for each instance. The bounding box has 9 points, skeleton may have a varied number of points.
  • image_channels: an integer representing number of channels in the image.
  • image_height: an integer representing height of the image.
  • image_id: an integer representing frame number in the sequence.
  • image_timestamp: an integer representing the microsecond timestamp of the video frame in the video stream.
  • image_width: an integer representing height of the image.
  • instance_num: an integer representing number of object instances in this frame.
  • image: tensor containing an image of dimension (image_height x image_width x image_channels).
Objectron Data Splits

Google Objectron dataset testing set for class laptop is composed of 97074 images.

How to use Objectron Dataset with PyTorch and TensorFlow in Python

Train a model on Objectron Dataset with PyTorch in Python

Let’s use Deep Lake built-in PyTorch one-line dataloader to connect the data to the compute:

				
					dataloader = ds.pytorch(num_workers=0, batch_size=4, shuffle=False)
				
			
Train a model on Objectron dataset with TensorFlow in Python
				
					dataloader = ds.tensorflow()
				
			

Additional Information about Objectron Dataset

Objectron Dataset Description

Objectron Dataset Curators
Adel Ahmadyan, Liangkai Zhang, Jianing Wei, Artsiom Ablavatski, Matthias Grundmann
Objectron Dataset Licensing Information
Objectron Dataset Citation Information
				
					@article{objectron2021,
  title={Objectron: A Large Scale Dataset of Object-Centric Videos in the Wild with Pose Annotations},
  author={Adel Ahmadyan, Liangkai Zhang, Artsiom Ablavatski, Jianing Wei, Matthias Grundmann},
  journal={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
  year={2021}
}
				
			

Objectron Dataset FAQs

What is the Objectron Dataset for Python?
The Objectron Dataset was introduced to advance state of the art in 3D object detection. It consists of object-centric 15K annotated videos and 4M annotated images.
 
What is the Objectron Dataset used for?
The Objectron Dataset is commonly used to improve 3D shape representation and enable new research and applications in 3D understanding, video models, object retrieval, view synthetics, and 3D reconstruction.
 
What are the Google Objectron Dataset classes?

You can load Objectron Dataset fast with one line of code using the open-source package Activeloop Deep Lake in Python. See detailed instructions on how to load Objectron Dataset training subset or Objectron Dataset testing subset in Python.

How can I use Objectron Dataset in PyTorch or TensorFlow?

You can stream Objectron Dataset while training a model in PyTorch or TensorFlow with one line of code using the open-source package Activeloop Deep Lake in Python. See detailed instructions on how to train a model on Objectron Dataset with Pytorch in Python or train a model on Objectron Dataset with TensorFlow in Python.

Deep Lake community member Manas Gupta has contributed to this dataset documentation. You're awesome, Manas!

CONTENTS