Year: 2021

Abstract:
The representation of objects is the building block of higher-level concepts. Infants develop the notion of objects without supervision. The prediction error of future sensory input is likely the major teaching signal for infants. Inspired by this, we propose a new framework to extract object-centric representation from single 2D images by learning to predict future scenes in the presence of moving objects. We treat objects as latent causes whose function to an agent is to facilitate efficient prediction of the coherent motion of their parts in visual input. Distinct from previous object-centric models, our model learns to explicitly infer objects’ locations in 3D environment in addition to segmenting objects. Further, the network learns a latent code space where objects with the same geometric shape and texture/color frequently group together. The model requires no supervision or pre-training of any part of the network. We provide a new synthetic dataset with more complex textures on objects and background and found several previous models not based on predictive learning overly rely on clustering colors and lose specificity in object segmentation. Our work demonstrates a new approach for learning symbolic representation grounded in sensation and action.

heading: 1 INTRODUCTION
text: Visual scenes are composed of various objects in front of backgrounds. Discovering objects from 2D images and inferring their 3D locations is crucial for planning actions in robotics (Devin et al., 2018; Wang et al., 2019) and this can potentially provide better abstraction of the environment for reinforcement learning (RL), e.g. Veerapaneni et al. (2020). The appearance and spatial arrangement of objects, together with the lighting and the viewing angle, determine the 2D images formed on the retina or a camera. Therefore, objects are latent causes of 2D images, and discovering object is a process of inferring latent causes (Kersten et al., 2004). The predominant approach in computer vision for identifying and localizing objects rely on supervised learning to infer bounding boxes (Ren et al., 2015; Redmon et al., 2016) or pixel-level segmentation of objects (Chen et al., 2017). However, the supervised approach requires expensive human labeling. It is also difficult to label every possible category of objects. Therefore, an increasing interest has developed recently to build unsupervised or self-supervised models to infer objects from images, such as MONet (Burgess et al., 2019), IODINE (Greff et al., 2019) slot-attention (Locatello et al., 2020), GENESIS (Engelcke et al., 2019; 2021), C-SWM (Kipf et al., 2019) and mulMON (Nanbo et al., 2020). Our work also focuses on the same unsupervised object-centric representation learning (OCRL) problem, but offers a new learning objective and architecture to overcome the limitation of existing works in segmenting more complex scenes and explicitly represents objects’ 3D locations.
The majority of the existing OCRL works are demonstrated on relatively simple scenes with objects of pure colors and background lacking complex textures. As recently pointed out, the success of several recent models based on a variational auto-encoder (VAE) architecture (Kingma & Welling, 2013; Rezende et al., 2014) depends on a reconstruction bottleneck that needs to be intricately balanced (Engelcke et al., 2020). To evaluate how such models perform on scenes with more complex surface textures, we created a new dataset of indoor scenes with diverse texture patterns on the objects and background. We found that several existing unsupervised OCRL models overly rely on clustering pixels based on their colors. A challenge in our dataset and in real-world perception is that sharp boundaries between different colors exist both at contours of objects and within the surface of the same object. A model essentially has to implicitly learn a prior knowledge of which types of boundaries are more likely to be real object contours. The reconstruction loss in existing works appears to be insufficient for learning this prior.
To tackle this challenge, we draw our inspiration from development psychology and neuroscience. Infants understand the concept of object as early as 8 months, before they can associate objects with names (Piaget & Cook, 1952; Flavell, 1963). The fact that infants are surprised when object are hidden indicates that they have already learned to segment discrete objects from the scene and that their brains constantly make prediction and check for deviation from expected outcome. As the brain lacks direct external supervision for object segmentation, the most likely learning signal is from the error of this prediction. In the brain, a copy of the motor command (efference copy) is sent from the motor cortex simultaneously to the sensory cortex, which is hypothesized to facilitate the prediction of changes in sensory input due to self-generated motion (Feinberg, 1978). What remains to be predicted are changes in visual input due to the motion of external objects. Therefore, we believe that the functional purpose of grouping pixels into object is to allow the prediction of the motion of the constituting pixels in a coherent way by tracking very few parameters (e.g., the location, pose, and speed of an object). Driven by this hypothesis, our contribution in this paper is: (1) we combine predictive learning and explicitly 3D motion prediction to learn 3D aware objectcentric representation, which we call Object Perception by Predictive LEarning (OPPLE); (2) we provide a new dataset1 with complex surface texture and motion by both the camera and objects to evaluate object-centric representation models; (3) we found several previous models overly rely on clustering colors to segment objects; (4) although our model leverages image prediction as learning objective, the architecture generalize the ability of object segmentation and spatial localization to single-frame images.

heading: 2 METHOD

heading: 2.1 PROBLEM FORMULATION
text: We denote a scene as a set of distinct objects and a background S = {O1, O2, . . . , OK , B}, whereK is the number of objects in scene. At any moment t, we denote two state variables, the location and pose of each object relative to the perspective of an observer (camera), as x(t)1:K andφ (t) 1:K , where x (t) k is the 3-d coordinate of the k-th object and φ(t)k is its yaw angle from a canonical pose, as viewed from the reference frame of the camera (for simplicity, we do not consider pitch and roll here and leave it for future work to extend to 3D pose). At time t, given the location of the camera o(t) ∈ R3 and its facing direction α(t), S renders a 2D image on the camera as I(t) ∈ Rw×h×3, where w × h is the size of the image. Our goal is to train a neural network that infers properties of objects given only a single image I(t) as the sole input without external supervision and with only the information of the intrinsics and egomotion of the camera without explicit knowledge of its extrinsic matrix:
{z(t)1:K ,π (t) 1:K+1, x̂ (t) 1:K ,p (t) φ1:K } = fobj(I(t)) (1)
Here, z(t)1:K is a set of view-invariant vectors representing the identity of each object k. “Viewinvariant” is loosely defined as |z(t)k − z (t+∆t) k | < |z (t) k − z (t) l | for k 6= l and ∆t > 0 in most cases, i.e., the vector codes are more similar for the same object across views than they are different across objects. π(t)1:K+1 ∈ R(K+1)×w×h are the probabilities that each pixel belongs to any of the objects or the background ( ∑ k πkij = 1 for any pixel at i, j), which achieve object segmentation. To localize objects, x̂(t)1:K are the estimated locations of each object relative to the observer and p (t) φ1:K are estimated probability distribution of the poses of each object. Each p(t)φk ∈ R b is a probability distribution over b equally-spaced bins of yaw angles in (0, 2π).

heading: 2.2 OVERALL PRINCIPLE: LEARNING OBJECT REPRESENTATION BY PREDICTING THE FUTURE
text: Our hypothesis is that the notion of object emerges to meet the need of efficiently predicting the future fates of all parts of an object. With the (to be learned) ability to infer an object’s pose and location from each frame, the object’s speed of translation and rotation can be estimated from consecutive frames. If depth is further inferred for each pixel belonging to an object, then the optical
1We will release upon publication of the paper
flow of each pixel can be predicted based on the object’s speed and the position of each pixel relative to the object’s center. The pixel-segmentation of an object essentially prescribes which pixels should move together with the object. With the predicted optical flow, one can further predict part of the next image by warping the current image. The parts of the next image unpredictable by warping include surfaces of objects or the background that are currently occluded but will become visible, and the region of a scene newly entering the view due to self- or object-motion. These portions can only be predicted based on the learned statistics of the appearance of objects and background, which we call ”imagination”. In this work, we will show that with the information of self-motion, knowledge of geometry (rule of rigid-body movement) and the assumption of smooth object movement, the object representations captured by function fobj and depth perception can be learned without supervision.

heading: 2.3 NETWORK ARCHITECTURE
text: To demonstrate the hypothesized principle above, we build our OPPLE networks as illustrated in Figure 1, which process two consecutive images individually and make prediction for the next image with the information extracted from them.
Object extraction network. We build an object extraction network fθobj by modificaiton of a U-Net (Ronneberger et al., 2015) to extract representation for each object, the pixels it occupies and its spatial location and pose. A basic U-Net is composed of a convolutional encoder and a transposed convolutional decoder, while each encoder layer sends a skip connection to the corresponding decoder layer, so that the decoder can combine both global and local information. Inside our fθobj , an image I(t+1) first passes through the encoder. Additional Atrous spatial pyramid pooling layer (Chen et al., 2017) is inserted between the middle two convolutional layers of the encoder to expand the receptive field. The top layer of the encoder outputs a feature vector et capturing the global information of the scene. A Long-Short Term Memory (LSTM) network further repeatedly reads in e(t)
and sequentially outputs one code for an object at a time. Each object code is then mapped through a one-layer fully connected network to predict object code z(t)k , object location x̂ (t) k and object pose probability p φ (t) k
, k = 1, 2, · · · ,K. The inferred location is restricted to the visible range of the camera with an upper limit of distance. The pose prediction is represented as log p
φ (t) k
for numerical
stability. Each object code vector z(t)k is then independently fed through the decoder with shared skip connection from the encoder. The decoder outputs one channel for each pixel, representing an un-normalized log likelihood that the pixel belongs to the object k. The unnormalized logit maps for all objects are concatenated with a map of all zero for the background, and compete through a softmax function to output the probabilistic segmentation map π(t)k .
Depth perception network. We use a standard U-Net for depth perception function hθdepth that processes images I(t) and output a single-channel depth mapD(t).
Object-based imagination network. We build the imagination network gθimag also with a modified U-Net. The input is concatenated image I(t) and log of depth log(D(t)) inferred by the depth perception network, both multiplied element-wise by one probabilistic mask π(t)k . The output of the encoder network is concatenated with a vector composed of the observer’s moving velocity v(t)obs and rotational speed ω(t)obs, and the estimated object location x̂ (t) k , velocity v̂ (t) k and rotational speed ω̂ (t) k before entering the decoder. The decoder outputs five channels for each pixel: three for predicting RGB colors, one for depth and one for the probability of the pixel belonging to any object k or background and is used to weight the predicted color and depth for the final ”imagination”.

heading: 2.4 LEARNING OBJECT REPRESENTATION BY PREDICTION
text: Below, we explain details of the approach. The pseudocode of the algorithm is provided in the appendix.

heading: 2.4.1 PREDICTION BY WARPING
text: We first describe the prediction of part of the next image by warping the current image. Here we consider only rigid objects and the fates of all visible pixels belonging to an object. With depth D(t) ∈ Rw×h = hθ(I(t)) of all pixels in a view inferred by the Depth Perception network based on visual features in the image I(t) , the 3D location of a pixel m̂(t)(i,j) at any coordinate (i, j) in the image, can be determined given the focal length d of the camera. We use the inferred current and previous locations, x̂(t)k and x̂ (t−1) k to estimate the instantaneous velocity of the K
th object v̂
(t) k = x̂ (t) k − x̂ (t−1) k for all pixels (i, j) attributed to thatK
th object. Similarly, with the inferred the current and previous pose probabilities of the object, p(t)φk and p (t−1) φk , we can obtain the likelihood of its angular velocity p(φ(t)k , φ (t−1) k | ω (t) k = ω). We obtain the posterior distribution of the object’s next pose p(φ(t+1)k | φ (t) k , φ (t−1) k ) with a Von Mises prior. More details about warping and pose estimation are added in the Appendix.
Assuming a pixel (i, j) belongs to object k, we use the estimated motion information v̂(t)k and p(ω
(t) k | φ (t) k , φ (t−1) k ) of the object, together with the current location and pose of the object and the current 3D location m̂(t)(i,j) of the pixel, to predict the 3D location m ′(t+1) k,(i,j) of the pixel at the next moment asm′(t+1)k,(i,j) = M (t) −ωobs [M (t) ω̂k (m̂ (t) (i,j)− x̂ (t) k ) + x̂ (t) k + v̂ (t) k −v (t) obs], whereM (t) −ωobs andM (t) ω̂k are rotational matrices due to the rotation of the observer and the object, respectively, and v(t)obs is the velocity of the observer (relative to its own reference frame at t). In this way, assuming objects move smoothly most of the time, if the self motion information is known, the 3D location of each visible pixel can be predicted. If a pixel belongs to the background, ωK+1 = 0 and vK+1 = 0 (K+ 1 is the background’s index). Given the predicted 3D location, the target coordinate (i′, j′)(t+1)k of the pixel on the image and its new depth D′k(i, j)
(t+1) can be calculated. This prediction of pixel movement allows predicting the image I ′(t+1) and depth D′(t+1) by weighting the colors and depth of pixels predicted to land near each pixel at the discrete grid of the next frame.
Considering that object attribution of each pixel has to be inferred, we can write object attribution as a probability of belonging to each object, across all pixels, π(t)k , k = 1, 2, · · · ,K+1. The predicted motion of each pixel should be described as a probability distribution over K + 1 discrete target locations p(x′(t+1)(i,j) ) = ∑K+1 k=1 π (t) kij ·δ(x′ (t+1) k,(i,j)), i.e., pixel (i, j) has a probability of π (t) kij to move to location x′(t+1)k,(i,j). Using probabilistic prediction of pixel movements, we partially predict the color of next image at the pixel grids where some original pixels from the current will land by weighting their contribution I ′(t+1)Warp (p, q). This contribution term is used to calculate a weight for effect of a pixel (i,j) on position (p,q) on the grid, and is written as wk(i, j, p, q). More details in the appendix.

heading: 2.4.2 IMAGINATION
text: For the regions not fully predictable by warping current image with appendix equation (7), i.e., for (p, q) where ∑ k,i,j wk(i, j, p, q) < 1, we learn a function g that “imagines” the appearance I ′ (t+1) kImag ∈ Rw×h×3 and the pixel-wise depth D′ (t+1) kImag ∈ Rw×h of the object or background k in the next frame, and the predicted probabilities that each pixel in the next frame belongs to each object or the background π′(t+1)kImag ∈ Rw×h. The function takes as input portion of the current image corresponding to each object I(t) π(t)k and the inferred depth D(t) π (t) k , both extracted by element-wise multiplying with the probabilistic segmentation mask π(t)k , the information of the camera’s self motion, and the location and motion of that object:
{I ′(t+1)kImag ,D′ (t+1) kImag ,π ′(t+1) kImag} = g(I (t) i π (t) k ,D (t) π(t)k , x̂ (t) k , v̂ (t) k , ω̂ (t) k , ω (t) obs) (2)
The “imagination” specific for each object and the background can then be merged using the weights prescribed by π′(t+1)1:KImag: I ′(t+1) Imag = ∑ k I ′(t+1) kImag π′ (t+1) kImag , andD ′(t+1) Imag = ∑ kD ′(t+1) kImag π′ (t+1) kImag .

heading: 2.4.3 COMBINING WARPING AND IMAGINATION
text: The final predicted image or depth map are weighted average of the prediction made by warping the current image or predicted depth map and the corresponding predictions by imagination:
I ′ (t+1) = I ′ (t+1) Warp WWarp + I ′ (t+1) Imag (1−WWarp) (3)
Here, WWarp ∈ Rw×h with each element WWarp(p, q) = max{ ∑ k,i,j w(i, j, p, q), 1}. The intuition is that imagination is only needed when there is not sufficient contribution for predicting a pixel by warping. The same weighting applies for generating the final predicted depthD′(t+1).
In addition to the image, the states of the objects can also be predicted. The location of object k at t + 1 can be predicted as x′(t+1)k = M (t) −ωobs(x̂ (t) k + v̂ (t) k − v (t) obs). Its new pose probability can be
predicted by p′(t+1)(φk + ωobs = γ2) = ∑
γ1,ω,γ2−γ1∈ {ω−2π,ω,ω+2π}
p(ω̂ (t) k = ω)p(φ (t) k = γ1) for γ2 equal to
each fixed yaw angle bin. To obtain p′(t+1)(φk) instead of p′ (t+1)
(φk+ωobs) at the same set of bins, the vector p′(t+1)(φk+ωobs) can be shifted by multiplication with a pre-computed matrix composed of a bank of shifted Von Mises distributions to “move” the probability mass on the angle bins.
There is one important issue of object-centric representation when making prediction for future images: in order to predict the spatial state of each object at t + 1 based on the views at t and t− 1, the network needs to match the representation of an object at t from the representation of the same object at t − 1. As the dimensions of features (e.g., shape, surface texture, size, etc.) grows, the number of possible objects grows exponentially. Therefore, we cannot simply match object representations based on the order by which an LSTM extracts objects, as this requires learning a consistent order over enormous amount of objects. Instead, we take a soft-matching approach: we take a subset of the features in z(t)k extracted by f as an identity code for each object. For object k at time t, we calculate the distance between its identity code and those of all objects at t − 1, and pass the distances through a radial basis function to serve as a matching score rkl indicating how closely the object k matches each of the previous objects. The scores are used weight all the
estimated translational and rotational speeds for object k each assuming a different object l were the true object k at t− 1. We additionally introduce a fixed identity code zK+1 = 0 for the background and set the predicted motion of background to zero.

heading: 2.4.4 LEARNING OBJECTIVE
text: Above, we have explained how the next image input I ′(t+1), the depth map D′(t+1) and the spatial states of each object, x′(t+1)k and p ′(t+1) φk can be predicted based on object-centric representation extracted by a function f from the current and previous images I(t)i and I (t−1) i , the depth D ′(t) extracted by a function h, combined with the prediction from object-based imagination function g that are all to be learned. Among the three prediction targets, only the ground truth of visual input I(t+1) is available, while the other can only be inferred by f and h from I(t+1). Therefore, for the prediction targets other than I(t+1), we use the self-consistent loss between the predicted value based on t and t− 1 and the inferred value based on t+ 1 as additional regularization terms to learn the functions f and g.
To learn the functions f , g and h, we approximate them with deep neural networks with parameters θ and optimize θ to minimize the following loss function:
L = Limage + λdepthLdepth + λspatialLspatial + λmapLmap (4)
Here, Limage = MSE(I ′ (t+1) , I(t+1) is the image prediction error. Ldepth = MSE(log(D′(t+1)), log(D̂(t+1))) is the error between the predicted and inferred depth. These provide major teaching signals. Lspatial = ∑K k=1 | ∑K+1 l=1 rklx ′(t+1) l − x̂ (t+1) k |2− ∑K k=1 min{|x̂ (t+1) rand − x̂ (t+1) k |, δ} + ∑K k=1 |x̂ (t+1) k − ∑ i,j m̂ (t+1) i,j πkij |2 + ∑K k=1DKL(p̂ (t+1) φk || ∑K+1 l=1 rklp ′(t+1) φl
) is the self-consistent loss on spatial information prediction. The first term is the error between inferred and predicted location of each object, while the calculation of the predicted location incorporates soft matching between objects in consecutive frames. The second term is the negative term of contrastive loss, which we found empirically prevents the network from reaching a local minimum where all objects are inferred at the same location relative to the camera (and covering minimal regions of the picture). x̂rand is the inferred object location from a random sample within the same batch. The third term penalizes the discrepancy between the inferred object location and the average location of pixels in its segmentation mask. The last term is the KL-divergence between the predicted and inferred pose for each object at t+ 1. Lmap = ReLu(10−4−π1:K) +πk ·πl, for k 6= l avoids loss of gradient due to zero probability of object belonging and discourages overlap between maps of different objects.

heading: 2.5 DATASET
text: We procedurally generated a dataset composed of 306445 triplets of images captured by a virtual camera with field of view of 90 degrees in a square room. The camera translates horizontally and pans with random small steps between consecutive frames to facilitate the learning of depth perception. 3 objects with random shape, size, surface color or textures are spawned at random locations in the room and each move with a randomly selected constant velocity and panning speed. The translation and panning of the the camera is known to the networks. No other ground truth information is provided. The first two frames serve as data and the last frame serve as the prediction target at t+ 1. An important difference between this dataset and other commonly used synthetic datasets for OCRL is that more complex and diverse textures are used on both the objects and the background. We further evaluated on a richer version of the Traffic dataset (Henderson & Lampert, 2020) in A.6.

heading: 2.6 COMPARISON WITH OTHER WORKS
text: To compare our work with the states-of-the-art models of unsupervised object-centric representation learning, we trained MONet (Burgess et al., 2019), slot-attention (Locatello et al., 2020) and GENESIS2 (Engelcke et al., 2021) on the same dataset. Although these models are trained on single images, all images of each triplets are used for training.
2We failed to obtain reasonable result by training GENESIS V2 on our dataset, thus we adopted a GENESIS network pre-trained on GQN dataset and retrained on our dataset with K=7.
To address the concern that the original configurations of the models are not optimized for more difficult dataset, we trained variants of some of the models with large network size. For MONet, we tested channel numbers of [32, 64, 128, 128] (MONet-128) and [32, 64, 128, 256, 256] (MONet-128-bigger) for the hidden layers of encoder of the component VAE instead of [32, 32, 64, 64] and adjusted decoder layers sizes accordingly, and increased the base channel from 64 to 128 for the attention network. For slot attention, we tested a variant which increased the number of features in the attention component from 64 to 128 (slotattention-128). Slot numbers were chosen as 4 except for GENESIS.

heading: 3 RESULTS
text: After training the networks, we evaluate them on 4000 test images unused during training but generated randomly with the same procedure, thus coming from the same distribution. We compare the performance of different models mainly on their segmentation performance. Additionally, we demonstrate the ability unique to our model: inferring locations of objects in 3D space and the depth of the scene. The performance of depth perception is illustrated in the appendix.

heading: 3.1 OBJECT SEGMENTATION
text: Following prior works (Greff et al., 2019; Engelcke et al., 2019; 2021), we evaluated segmentation with the Adjusted Rand Index of foreground objects (ARI). In addition, for each image, we matched ground-true objects and background with each of the segmented class by ranking their Intersection over Union (IoU) and quantified the average IoU over all foreground objects3. The performance is summarized in table 2.6 .
Our model outperforms all compared models on ARI and is second to a slot-attention-128 in IoU. As shown in Figure 2, MONet and GENESIS appear to heavily rely on color to group pixels into the same masks. Even though some of these models almost fully designate pixels of an object to a mask, the masks lacks specificity in that they often include pixels with similar colors from other objects or background. Patterns on the backgrounds are often treated as objects as well. The reason of such drawbacks awaits further investigation but we postu-
late there may be fundamental limitation in the approach that learns purely from static discrete images. Patches in the background with coherent color offer room to compress information similarly as objects with coherent colors do, and their shapes re-occur across images just as other objects. Our model is able to learn object-specific masks because these masks are used to predict optical flow specific to each object. A wrong segmentation would generate large prediction error even if the motion of an object is estimated correctly. Such prediction error forces the masks to be concentrated on object surface. They emerge first at object boundaries where the prediction error is the largest and gradually grow inwards during training. Figure 3A-D further compares the distribution
3Due to the artifact at the border of slot-attention model, IoU was calculated excluding those border pixels
of IoU across models. Most models have IoU < 0.01 for about 1/4 of objects. Only OPPLE and slot-attention-128 show bi-modal distributions while other models’ IoU are more skewed towards 0. Figure 3G plots each object’s distance and size on the picture with colors corresponding to their IoUs in our model. Objects with poor segmentation (blue dots) are mostly far away from the camera and occupy few pixels. This is reasonably because motion of farther objects causes less shift on the images and thus provide weaker teaching signal for the network to assign their pixels as separate from the background. For other models, blue dots are more spread even for near objects (not shown).

heading: 3.2 OBJECT LOCALIZATION
text: The Object Extraction Network infers object location relative to the camera. We convert the inferred locations to angles and distance in polar coordinate relative to the camera. Figure 3E-F plot the true and inferred angles and distance, color coded by objects’ IoUs. For objects well segmented (red dots), their angles are estimated high accurately (concentrated on the diagonal in E). Distance estimation is negatively biased for farther objects, potentially because the regularization term on the distance between the predicted and inferred object location at frame t + 1 favors shorter distance when estimation is noisy. Note that the ability to explicitly infer object’s location is not available in other models compared.

heading: 3.3 MEANINGFUL LATENT CODE
text: Because a subset of the latent code (10 dimensions) was used to calculate object matching scores between frames in order to soft-match objects, this should force the object embedding z to be similar for the same objects. We explored the geometry of the latent code by examining whether the nearest neighbours of each of the object in the test data with IoU > 0.5 are more likely to have the same property as themselves. 772 out of 3244 objects’ nearest neighbour had the same shape (out of 11 shapes) and 660 objects’ nearest neighbour had the same color or texture (out of 15). These numbers are 28 to 29 times the standard deviation away from the means of the distribution expected if the nearest neighbour were random (Figure 3H). This suggests the latent code reflects meaningful features of objects. However, texture and shape are not the only factors determining latent code, as we found the variance of code of all objects with the same shape and texture to still be big.

heading: 4 RELATED WORK
text: Our work is on the same tracks as two recent trends in machine learning: object-centric representation (Locatello et al., 2020) and self-supervised learning (Chen et al., 2020). We take the same
logic as self-supervised learning that learning to predict part of the data based on another part forces a neural network to learn important structures in the data. However, most of the existing works in self-supervised learning do not focus on object-based representation, but instead encode the entire scene as one vector. Other works on object-centric representations overcome this by assigning one representation to each object, as we do. Although works such as MONet (Burgess et al., 2019), IODINE (Greff et al., 2019), slot-attention (Locatello et al., 2020), GENESIS (Engelcke et al., 2019) and PSGNet (Bear et al., 2020) can also segment objects and some of them can ”imagine” complete objects based on codes extracted from occluded objects or draw objects in the correct order consistent with occlusion, few works explicitly infer an object’s location in 3D space together with segmentation purely by self-supervised learning, with the exception of a closely related work O3V (Henderson & Lampert, 2020). Both our works learn from videos. One major distinction is that O3V interleaves spatial and temporal convolution, thus it still require video as input at test time. In contrast, our three major networks process each image independently. Therefore, once trained, our network can generalize to single images. Another distinction from Henderson & Lampert (2020) and many other works is that our model learns from prediction instead of reconstruction. Contrastivelearning of structured world model (Kipf et al., 2019) also learns object masks and predict their future states by linking each object mask with a node in a Graphic Neural Network (GNN). The order of mapping object slot to nodes of GNN is fixed through time, and the actions to objects are coded with specific associated nodes. This arrangement may become infeasible with combinatorial number of different possible objects as the order of assigning different objects to a limited number of nodes may not be consistent across scenes. We solve this by a soft matching of object representation between different time points, which does not require the RNN in the Object Extraction Network to learn a fixed order of extracting different types of objects. On the neuroscience side, our work is highly motivated by recent works on predictive learning (O’Reilly et al., 2021) which also yields view-invariance representation while self-motion signal is available. O’Reilly et al. (2021) used biologically plausible but less efficient learning and applied their model to an easier dataset with objects without background, and did not learn object localization. We should note that explicit spatial localization and depth perception were not pursued in previous works on self-supervised object-centric learning, and the images in our dataset have significantly richer texture information than those demonstrated in previous works (Burgess et al., 2019; Kipf et al., 2019), making the task more challenging. Although view synthesis is not our central goal, the principle illustrated here can be combined with recent advancement in 3D-aware image synthesis (Wiles et al., 2020).

heading: 5 DISCUSSION
text: We provide a new approach to learn object-centric representation that includes explicit spatial localization of objects, object segmentation from image, automatic matching the same objects across scene based on a learned latent code and depth perception as a by-product. All of the information extracted by our networks are learned without supervision and no pre-training on other tasks is involved. The only additional information required is that of observer’s self-motion, which is available in the brain as efference copy. This demonstrate the possibility of learning rich embodied information of object, one step toward linking neural networks with symbolic representation in general. We expect future works to develop self-supervised learning model for natural categories beyond simple object identity, building on our work.
The work demonstrates that the notion of object can emerge as a necessary common latent cause of the pixels belonging to the object for the purpose of efficiently explaining away the pixels’ coherent movement across frames. In our experiment, object spatial location is inferred more easily than object pose (which we have not fully investigated), thus the predicted warping relies more on object translation than rotation. As a limitation, almost all existing object-centric representation works, including ours, focus on rigid bodies and simple environment. Future works need to explore how to learn object representation for deformable objects, objects with more complex shapes and lighting conditions, and more cluttered environment, towards more realistic application. There is important implication for learning 3D-aware object-based representation, because for such representation to be useful eventually for robotics and RL, agents need to understand an object’s spatial relation to itself based on vision. Learning object-centric representation with explicit 3D information is an important step toward embodied representation of the environment.

heading: A APPENDIX
text: A.1 PSEUDO CODE OF THE OPPLE FRAMEWORK
Algorithm 1 Developing object-centric representation by predicting future scene InitInitialize: Network parameters θ Input: images I(t−1), I(t) ∈ Rw×h×3, self-motion v(t−1)obs , ω (t−1) obs ,v (t) obs, ω (t) obs Output: prediction I ′(t+1), segmentation π(t−1)1:K+1, π (t) 1:K+1, objects’ codes z (t−1) 1:K , z (t) 1:K , objects’
locations and poses x̂(t−1)1:K ,p (t−1) φ1:K , x̂ (t) 1:K ,p (t) φ1:K for τ = {t− 1, t} do scene code e(τ) ← U-NetEncoderfθ (I(τ)) object code z(τ)1:K , location x̂ (τ) 1:K , pose p (τ) φ1:K
← LSTMfθ (e(τ)) background code zK+1 = 0 depthD(τ) ← hθ(I(τ)) segmentation mask π(τ)1:K+1 ← Softmax (U-NetDecoderfθ (I (τ), z (τ) 1:K), 0)
end for object matching scores rkl ← RBF(z(t)k , z (t−1) l ), k, l ∈ 1 : K + 1 for k ← 1 to K do object motion v̂1:K ,ω1:K ← rk,l, x̂(t)k , x̂ (t−1) l ,p (t) φk ,p (t−1) φl , l = 1 : K + 1
onject-specific optical flowk ← v̂1:K ,ω1:K ,vobs, ωobs,D(t) end for I ′
(t+1) warp ←Warp(I(t), optical flow1:K+1)
I ′ (t+1) imagine ← gθ(I(t) π (t) 1:K+1, log(D (t)) π(t)1:K+1,vobs, ωobs, v̂1:K+1, x̂1:K) final image prediction: I ′(t+1) ← I ′(t+1)warp , I ′ (t+1) imagine,warping weights update parameters: θ ← θ − γ∇θ[|I ′(t+1) − I(t+1)|2 + regularization loss]
A.2 PERFORMANCE ON DEPTH PERCEPTION
We demonstrate a few example images and the inferred depth. Our network can capture the global 3D structure of the scene, although details on object surfaces are still missing. Because background occurs in every training sample, the network appears to bias the depth estimation on objects towards the depth of the walls behind, as is also shown in the scatter plot.
A.3 NETWORK TRAINING AND DATASET
We trained the three networks jointly using ADAM optimization Kingma & Ba (2014) with a learning rate of 3e−4, = 1e−6 and other default setting in PyTorch, with a batch size of 24. 40 epochs were trained on the dataset. We set λspatial = 1.0, λdepth = 0.1 and Lmap = 0.005 Images in datasets are rendered in Unity environment and downsampled to 128 × 128 resolution for training. Images are rendered in sequence of 7 steps each time in a room with newly selected texture and object. Camera moves with random steps and random rotation between consecutive frames. All possible triplets equally spaced by 1, 2, and 3 frames form training samples.
The model was implemented in PyTorch and trained on NVidia RTX 6000. We will release the code and dataset upon publication of the manuscript.
A.4 METHOD
A.4.1 PREDICTION BY WARPING
We first describe the prediction of part of the next image by warping the current image. Here we consider only rigid objects and the fates of all visible pixels belonging to an object. With depth D(t) ∈ Rw×h = hθ(I(t)) of all pixels in a view inferred by the Depth Perception network based on visual features in the image I(t) , the 3D location of a pixel at any coordinate (i, j) in the image, where |i| ≤ w−12 ,|j| ≤ h−1 2 , can be determined given the focal length d of the camera as m̂ (t) (i,j) = D(t)(i,j)√ i2+j2+d2 · [i, d, j]. Here, we take the coordinate of the center of an image as (0,0). On the other hand, with the inferred x̂(t)k and x̂ (t−1) k , the current and previous locations of the object k that the pixel (i, j) belongs to, from I(t) and I(t−1) respectively, we can estimate the instantaneous velocity of the object v̂(t)k = x̂ (t) k − x̂ (t−1) k . Similarly, with the inferred the current and previous pose probabilities of the object, p(t)φk and p (t−1) φk , we can obtain the likelihood of its angular velocity
p(φ (t) k , φ (t−1) k | ω (t) k = ω) ∝ ∑ γ1,γ2,γ1−γ2∈ {ω−2π,ω,ω+2π} p(φ (t) k = γ1) · p(φ (t−1) k = γ2) (5)
.
By additionally imposing a prior distribution (we use Von Mises distribution) over ω(t)k that favors slow rotation, we can obtain the posterior distribution of the object’s angular velocity p(ω
(t) k | φ (t) k , φ (t−1) k ), and eventually the posterior distribution of the object’s next pose p(φ (t+1) k |
φ (t) k , φ (t−1) k ).
Assuming a pixel (i, j) belongs to object k, using the estimated motion information v̂(t)k and p(ω (t) k | φ (t) k , φ (t−1) k ) of the object, together with the current location and pose of the object and the current 3D location m̂(t)(i,j) of the pixel, we can predict the 3D location m ′(t+1) k,(i,j) of the pixel at the next moment as
m′ (t+1) k,(i,j) = M (t) −ωobs [M (t) ω̂k (m̂ (t) (i,j) − x̂ (t) k ) + x̂ (t) k + v̂ (t) k − v (t) obs] (6)
where M (t)−ωobs and M (t) ω̂k are rotational matrices due to the rotation of the observer and the object, respectively, and v(t)obs is the velocity of the observer (relative to its own reference frame at t). In this way, assuming objects move smoothly most of the time, if the self motion information is known, the 3D location of each visible pixel can be predicted. If a pixel belongs to the background, ωK+1 = 0 and vK+1 = 0 (K + 1 is the background’s index). Given the predicted 3D location, the target coordinate (i′, j′)(t+1)k of the pixel on the image and its new depth D ′ k(i, j)
(t+1) can be calculated. This prediction of pixel movement allows predicting the image I ′(t+1) and depth D′(t+1) by weighting the colors and depth of pixels predicted to land near each pixel at the discrete grid of the next frame, as explained in Sec 2.4.2.
A.4.2 WARPING CONTRIBUTION WEIGHT
As the object attribution of each pixel is not known but is inferred by fobj(I(t)), it is represented for every pixel as a probability of belonging to each object and the background π(t)k , k = 1, 2, · · · ,K+ 1. Therefore, the predicted motion of each pixel should be described as a probability distribution over K + 1 discrete target locations p(x′(t+1)(i,j) ) = ∑K+1 k=1 π (t) kij · δ(x′ (t+1) k,(i,j)), i.e., pixel (i, j) has a probability of π(t)kij to move to location x ′(t+1) k,(i,j) at the next time point, for k = 1, 2, · · · ,K+1. With such probabilistic prediction of pixel movement for all visible pixel (i, j)(t), we can partially predict the colors of the next image at the pixel grids where some original pixels from the current view will land nearby by weighting their contribution:
I ′ (t+1) Warp (p, q) =
{∑ k,i,j wk(i,j,p,q)I
(t)(i,j)∑ k,i,j wk(i,j,p,q) , if ∑ k,i,j wk(i, j, p, q) > 0
0, otherwise (7)
We define the weight of the contribution from any source pixel (i, j) to a target pixel (p, q) as
wk(i, j, p, q) = π (t) kij · e −β·D′(t+1)k (i,j) ·max{1− |i′(t+1)k − p|, 0} ·max{1− |j′ (t+1) k − q|, 0} (8)
The first term incorporates the uncertainty of which object a pixel belongs to. The second term e−β·D ′(t+1) k (i,j) resolves the issue of occlusion when multiple pixels are predicted to move close to the same pixel grid by down-weighting the pixels predicted to land farther from the camera. These last two terms mean that only the source pixels predicted to land within a square of of 2 × 2 pixels centered at any target location (p, q) will contribute to the color I ′(t+1)Warp (p, q). The depth map D′(t+1)Warp can be predicted by the same weighting scheme after replacing I (t)(i, j) with each predicted depth D′(t+1)k (i, j) assuming the pixel belongs to object k.
A.5 DEPENDENCY OF SEGMENTATION PERFORMANCE ON OBJECT SIZE AND DISTANCE ACROSS MODELS
Our model (OPPLE) MONet-128
Slot-attention-128 Genesis *
IoU 0
1
A.6 ILLUSTRATION OF PREDICTION QUALITY
In the figure below, we display the first, second image, one of the masked objects, the predicted third image, and the ground truth of the third image, both for our dataset, and for a richer version of the Traffic dataset used by (Henderson & Lampert, 2020). We provide reference lines and some circles to aid the comparison between images and evaluate the warping quality. Imagination quality can be insprected usually at one side of the predicted images (the camera motion is typically larger in our dataset).

Review summaries:
This paper studies the problem of predicting the segmentations and poses (position + yaw orientation) of multiple objects, given the image of a scene. The paper introduces a method that is trained without supervision for the segmentations, similar to several other recent object-centric models. In contrast to these existing models, the method proposed in this paper additionally estimates the 3D location of each object by predicting a depth map and classifies the yaw angle by representing the pose domain as equally-spaced bins. To do so, during training the method operates on a short clip of the scene recorded by a moving camera, and uses self-supervision by predicting the scene’s image at the next time step. At test time, the model is able to infer a representation of each object in the scene and segment them given a single image of the scene.

This paper presents a method to learn how to parse 3-frame videos into object-centric representations, which include segmentation masks and 3D positions and yaws for those objects frame-by-frame, as well as an image representation of the background, and an overall depth map. This is accomplished with a depth network, an object network with an LSTM at the bottleneck to iteratively pick out objects and their positions and yaws, and a decoder to provide segmentations, a warping/re-compositing operation that pastes the inferred objects at their estimated positions for the NEXT frame (i.e., with a constant-velocity assumption), and finally an "imagination" network which refines the estimated image. The model learns with a combination of 4 losses, which include image reprojection/prediction, depth consistency, a spatial term that includes consistency and randomness (though I have complaints about this), and finally a penalty term that discourages object probabilities from being zero. The paper also introduces a new synthetic dataset where prior methods do badly, and the proposed method does slightly better. The learned depth maps look good, but this is perhaps expected because camera poses are known. 

This paper presents an unsupervised object-centric scene representation technique that can decompose a scene into multiple objects (and segment the scene) and infer their 3D locations and pose. The overall setup is very similar to earlier models like MONet but this model works on sequences of images, more precisely on 3 consecutive images. It uses the first two images to infer the 3D position and pose of objects and combining this with known camera motion tries to predict the last (third) image. The main contribution here is an optical flow based method to warp the image at time t using the predicted object location/pose/depth to predict (some of) the pixels in image at time t+1.  In more detail, the object extraction network outputs the location and pose of each object. And a separate depth perception network outputs the depth for each pixel in the image. The location and pose of objects are used to estimate the velocity of each object (e.g., by subtracting the position at t-1 from position at t. note this requires matching each object at time t-1 to object in time t, which they do using a soft-matching approach). These along with the depth information are then used to warp the image at t to predict pixels in image at time t+1. This is possible only for a subset of the pixels so for the rest, they use a separate "imagination" network that takes in object information and predicts the color/depth and object masks at t+1. The predictions from warping and imagination network are then combined to form the final predicted color and depth images.  To train the model, they require images and camera motion, and use a combination of losses: reconstruction loss on predicted and ground truth image, self-supervised losses on object location, pose, and depth.  

Inspired by ideas about how humans learn about objects, the authors detail a system to train a neural network to perceive generic objects using image triplets where objects move and the viewer also can move.  The viewer's motion is provided as an input. Object perception by parts of the network operating on the first two time points is rewarded by predicting what is seen at the third time point (the training signal). Having been trained, the object perception part of the system, which is a relatively basic neural network, can segment them from a single image.  This new setup requires different data that what has been used in this space, and the authors contribute a synthetic dataset as well.