SpherePHD: Applying CNNs on a Spherical PolyHeDron Representation of 360 degree Images
Yeonkun Lee, Jaeseok Jeong, Jongseob Yun, Wonjune Cho, Kuk-Jin Yoon
SSpherePHD: Applying CNNs on a Spherical PolyHeDron Representation of 360 ◦ Images
Yeonkun Lee ∗ , Jaeseok Jeong ∗ , Jongseob Yun ∗ , Wonjune Cho ∗ , Kuk-Jin YoonVisual Intelligence Laboratory, Department of Mechanical Engineering, KAIST, Korea { dldusrjs, jason.jeong, jseob, wonjune, kjyoon } @kaist.ac.kr Abstract
Omni-directional cameras have many advantages overconventional cameras in that they have a much wider field-of-view (FOV). Accordingly, several approaches have beenproposed recently to apply convolutional neural networks(CNNs) to omni-directional images for various visual tasks.However, most of them use image representations defined inthe Euclidean space after transforming the omni-directionalviews originally formed in the non-Euclidean space. Thistransformation leads to shape distortion due to nonuniformspatial resolving power and the loss of continuity. Theseeffects make existing convolution kernels experience diffi-culties in extracting meaningful information.This paper presents a novel method to resolve such prob-lems of applying CNNs to omni-directional images. Theproposed method utilizes a spherical polyhedron to rep-resent omni-directional views. This method minimizes thevariance of the spatial resolving power on the sphere sur-face, and includes new convolution and pooling methodsfor the proposed representation. The proposed method canalso be adopted by any existing CNN-based methods. Thefeasibility of the proposed method is demonstrated throughclassification, detection, and semantic segmentation taskswith synthetic and real datasets.
1. Introduction ◦ cameras have many advantages over traditionalcameras because they offer an omni-directional view ofa scene rather than a narrow field of view. This omni-directional view of 360 ◦ cameras allows us to extract moreinformation from the scene at once. Therefore, 360 ◦ cam-eras play an important role in systems requiring rich infor-mation of surroundings, e.g . advanced driver assistance sys-tems (ADAS) and autonomous robotics.Meanwhile, convolutional neural networks (CNNs) have ∗ These authors contributed equally ‘360 ◦ ’ and ‘omni-directional’ are used interchangeably in the paper. Figure 1. Spatial distortion due to nonuniform spatial resolvingpower in an ERP image. Yellow squares on both sides representthe same surface areas on the sphere. been widely used for many visual tasks to preserve localityinformation. They have shown great performance in classi-fication, detection, and semantic segmentation problems asin [9] [12] [13] [15] [16].Following this trend, several approaches have been pro-posed recently to apply CNNs to omni-directional imagesto solve classification, detection, and semantic segmenta-tion problems. Since the input data of neural networks areusually represented in the Euclidean space, they need to rep-resent the omni-directional images in the Euclidean space,even though omni-directional images are originally repre-sented in non-Euclidean polar coordinates. Despite omni-directional images existing in a non-Euclidean space, equi-rectangular projection (ERP) has been commonly used torepresent omni-directional images in regular grids.However, there exists spatial distortion in ERP imagescoming from the nonuniform spatial resolving power, whichis caused by the non-linearity of the transformation asshown in Fig. 1. This effect is more severe near the poles.In addition, a different kind of distortion is observable whenthe omni-directional image is taken by a tilted 360 ◦ camera.In this case, without compensating for the camera tilt angle,ERP introduces a sinusoidal fluctuation of the horizon asin Fig. 2. This also distorts the image, making the task ofvisual perception much more difficult.In conventional 2D images, the regular grids along verti-cal and horizontal directions allow the convolution domainto be uniform; the uniform domain enables the same shaped a r X i v : . [ c s . C V ] A p r igure 2. Problems of using ERP images. (left) When an omni-directional image is taken by a tilted camera, a sinusoidal fluctu-ation of the horizon occurs in the ERP image. The yellow dottedline represents the fluctuating horizon [2]. (right) When the car issplit, the car is detected as cars with two different IDs. This image,which is from the SUN360 dataset [23], demonstrate the effects ofedge discontinuity. convolution kernels to be applied over the whole image.However, in ERP images, the nonuniform spatial resolvingpower, as shown in Fig. 1 and Fig. 2(left), causes the convo-lution domain to vary over the ERP image, making the sameshaped kernels inadequate for the ERP image convolution.Furthermore, during the transformation from the non-Euclidean space to the Euclidean space, some importantproperties could be lost. For example, the non-Euclideanspace in which omni-directional images are formed hasa cyclical property: the unidirectional translation along asphere surface ( i.e . in an omni-directional image) is al-ways continuous and returns to the starting point eventually.However, during the transformation from the non-Euclideanspace to the Euclidean space through the ERP, the continu-ity and cyclical properties are lost. This causes a discontinu-ity along the borders of the ERP image. The discontinuitycan cause a single object to be misinterpreted in detectionproblems as two different objects when the object is split bythe borders as shown in Fig. 2(right).Recently, there has been an attempt to keep the continu-ity of the omni-directional image by projecting the imageonto a cube map [14]. Projecting an omni-directional im-age onto a cube map also has the benefit that the spatial re-solving power in an image varies much less compared withERP images. Furthermore, the cube map representation isaffected less by rotation than the ERP representation. How-ever, even though a cube map representation reduces thevariance of spatial resolving power, there still exists vari-ance from centers of the cube faces to their edges. In addi-tion, the ambiguity of kernel orientation exists when a cubemap representation is applied to CNNs. Because the topand bottom faces of cube map are orthogonal to the otherfaces, it is ambiguous to define kernel orientation to extractuniform locality information on top and bottom faces. Theeffects of these flaws are shown in Sec.4.In this paper, we propose a new representation of 360 ◦ images followed by new convolution and pooling methodsto apply CNNs to 360 ◦ images based on the proposed rep-resentation. In an attempt to reduce the variance of spatialresolving power in representing 360 ◦ images, we come up with a spherical polyhedron-based representation of images(SpherePHD). Utilizing the properties of the SpherePHDconstructed by an icosahedral geodesic polyhedron, wepresent a geometry on which a 360 ◦ image can be pro-jected. The proposed projection results in less variance ofthe spatial resolving power and distortion than others. Fur-thermore, the rotational symmetry of the spherical geom-etry allows the image processing algorithms to be rotationinvariant. Lastly, the spherical polyhedron provides a con-tinuity property; there is no border where the image be-comes discontinuous. This particular representation aimsto resolve the issues found in using ERP and cube maprepresentations. The contributions of this paper also in-clude designing a convolution kernel and using a specificmethod of applying convolution and pooling kernels for usein CNNs on the proposed spherical polyhedron representa-tion of images. To demonstrate that the proposed method issuperior to ERP and cube map representations, we compareclassification, detection, and semantic segmentation accu-racies for the different representations. To conduct com-parison experiments, we also created a spherical MNISTdataset [7], spherical SYNTHIA dataset [17], and spheri-cal Stanford2D3D dataset [1] through the spherical polyhe-dron projection of the original datasets. The source codesfor our method are available at https://github.com/KAIST-vilab/SpherPHD_public .
2. Related works
In this section, we discuss relevant studies that have beendone for CNNs on omni-directional images.
As mentioned earlier, an ERP image has some flaws:the nonuniform spatial resolving power brings about distor-tion effects, rotational constraints, and discontinuity at theborders. Yang et al . [22] compared the results of differentdetection algorithms that take ERP images directly as in-puts, showing that not solving the distortion problem stillproduces relevant accuracy. Other papers proposed to rem-edy the flaws of ERP-based methods. To tackle the issueof nonuniform resolving power, Coors et al . [6] proposedsampling pixels from the ERP image, in a rate dependenton latitude, to preserve the uniform spatial resolving powerand to keep the convolution domain consistent in each ker-nel. Hu et al . [8] and Su and Grauman [19] partitioned anomni-directional image into subimages and produced nor-mal field of view (NFoV) images; during the partitioningstages, they also reduced the distortion effects in the ERPimage. Lai et al . [10] and Su et al . [20] generated saliencymaps from omni-directional images and extracted specificNFoV images from areas of high saliency. The use of NFoVimage sampling increased accuracy by solving the distor-tion problem, but extracting NFoV images from an omni- igure 3. Cube padding [4]. Cube padding allows the receptivefield of each face to extend across the adjacent faces. directional image is not as beneficial as utilizing the wholeomni-directional view for visual processing. In an attemptto use the whole omni-directional image and also resolvethe distortion problem, Su and Grauman [18] and Tateno etal . [21] used distortion-aware kernels at each latitude of theomni-directional image to take into account the resolvingpower variation. To tackle the distortion problem from tilt-ing the camera, Bourke [2] proposed a way to post-processthe ERP image, but this requires knowledge of the cameraorientation. Our method replaces the ERP-based represen-tation as a way to tackle the distortion problems raised fromERP images. ◦ images As a way to represent spherical geometry, a few meth-ods have been proposed to project an omni-directional im-age onto a cube to generate a cube map. The method in [14]utilized a cube map to generate a saliency map of the omni-directional image. As an extension to [14], Cheng et al . [4]proposed padding each face with pixels from tangent facesto consider information from all tangent faces and to con-volve across the edges. Figure 3 shows an example of sucha cube padding method. Utilizing the cube map projectionof omni-directional images resolves many of the issues thatERP-based methods face. However, in the cube map rep-resentation, there still exists noticeable variance of spatialresolving power between the centers and edges of the cubefaces. To address this variance of spatial resolving power,Brown [3] proposed the equi-angular cube (EAC) projec-tion, changing the method in which omni-directional viewsare sampled onto a cube. Cohen et al . [5] suggested trans-forming the domain space from Euclidean S space to aSO(3) 3D rotation group to reduce the negative effects ofthe ERP representation. Compared with the aforementionedapproaches, our method further minimizes the variance ofthe spatial resolving power, while not having to transforminto non-spatial domain. Projection of an omni-directional image is also a wellknown problem in geographical map projection. Through-out history there have been countless map projection meth- ods proposed. Some of the representations mentioned aboveare examples of these different map projection methods: thework done by Yang et al . [22] is similar to the Mercatormethod, work done by Coors et al . [6] is similar to the Ham-mer method. The method we propose in this paper is similarto the Dymaxion map projection method.
3. Proposed method
To obtain a new representation of an omni-directionalimage, we project an omni-directional image onto an icosa-hedral spherical polyhedron. After the projection, we applythe transformed image to a CNN structure. The advantageof using our representation over using ERP or any other rep-resentations is that ours has far less irregularity on an inputimage.
To discuss the irregularity of omni-directional image rep-resentations, we need to define a quantitative measure ofirregularity. To do so, we first define an effective area ofa pixel for a given representation ( i.e ., ERP, cube map) asthe corresponding area when the pixel is projected onto aunit sphere. The irregularity of the omni-directional imagerepresentation can then be measured by the variation of thepixels’ effective areas. To compare the irregularity for dif-ferent representations, we define the average effective areaof all the pixels in the given representation to be the geo-metric mean of them as shown in Eq. (1), where N is thetotal number of pixels and A i is the effective area of the i th pixel. A mean = N (cid:118)(cid:117)(cid:117)(cid:116) N (cid:89) i =1 ( A i ) (1)Then, we define the irregularity for the i th pixel, d i , as thelog scaled ratio of individual pixel’s area to their average,shown in Eq. (2). d i = log( A i A mean ) (2)Having defined the mean area to be the geometric mean,the log scaled ratios of irregularity always sum up to zero( (cid:80) Ni =1 d i = 0 ). This is a desired behavior of irregularityvalues because it is a measure of how much each individualpixel’s effective area deviates from the average of pixels’effective areas. We then define an overall irregularity scorefor each representation as the root-mean-square of the irreg-ularity values asIrregularity score = (cid:118)(cid:117)(cid:117)(cid:116) N N (cid:88) i =1 d i . (3) igure 4. Pixel areas on the 3 rd subdivision regular convex polyhe-drons: tetrahedron, cube, octahedron, and icosahedron. The vari-ance of pixel areas decreases with more equi-faced regions. Spherical polyhedrons are divisions of a sphere by arcsinto bounded regions, and there are many different ways toconstruct such spherical polyhedrons. The aforementionedcube map representation can be regarded as an example ofan omni-directional image projected onto a spherical poly-hedron. The cube map representation splits the sphere into6 equi-faced regions, creating a cubic spherical polyhedron;each of these 6 regions represents the face of a cube. Sim-ilarly, we can apply such representation to other regularpolyhedrons to create a spherical polyhedron that is dividedinto more equi-faced regions.In the cube map representation, the squares of a cube aresubdivided into smaller squares to represent pixels in a cubemap. The irregularity of the cube map representation occurswhen we create the cubic spherical polyhedron from a cubemap: pixels in a cube map correspond to different areas onthe cubic spherical polyhedron depending on pixels’ loca-tions in the cube map. Here, the irregularity score of thecubic spherical polyhedron converges at an early stage ofsubdivision when the squares on the cube are further sub-divided into even smaller squares. It means that the irregu-larity score of a spherical polyhedron is much more depen-dent on the intrinsic geometry used to make the sphericalpolyhedron than the number of regular convex polyhedronface subdivisions. This suggests that a regular convex poly-hedron with a greater number of faces can have much lowerirregularity when it is subdivided and turned into a spher-ical polyhedron: so we use a regular polyhedron with themost faces, an icosahedron . We can visually compare thevariances in Fig. 4. When creating a spherical polyhedron using an icosahe-dron, each subdivision subdivides each triangular face into4 smaller triangles with the same area. Each of these sub- The irregularity table is included in the supplementary materials divisions of triangles will be referred to as the n th sub-division where n refers to the number of times the trian-gles have been subdivided. After creating the subdividedicosahedron, we extrude the newly created vertices from thesubdivision onto a sphere, creating a geodesic icosahedron(Note that the original vertices of the icosahedron alreadylie on a sphere). We can then create a spherical polyhe-dron through tessellation of this geodesic icosahedron ontoa sphere. A spherical polyhedron constructed from a regu-lar convex icosahedron has a smaller irregularity score thanthe cubical spherical polyhedron .Ultimately, we use this SpherePHD to represent omni-directional images. To do so, we take an omni-directionalimage and project it onto the SpherePHD representation. Inthis projection, the omni-directional images are representedby the individual triangles tessellated on the SpherePHD.Our SpherePHD representation results in much less vari-ance of effective pixel areas compared with the cube maprepresentation. The minimal variance of effective pixel ar-eas would mean that our representation has less variance inresolving power than the cube representation, which has alower irregularity score.Because the SpherePHD is made from a rotationallysymmetric icosahedron, the resulting SpherePHD also hasrotationally symmetric properties. In addition, as the pro-jection is a linear transformation, our method does not haveany sinusoidal fluctuation effects like those seen in the ERPrepresentation, making our representation more robust torotation. The conventional CNNs compute a feature map througheach layer based on a convolution kernel across an image.In order to apply CNNs to SpherePHD, it is necessary todesign special convolution and pooling kernels that meetcertain criteria as follows:1. The convolution kernel should be applicable to all pixelsrepresented in the SpherePHD.2. The convolution kernel should have the pixel of interestat the center. The output of convolution should maintainthe locality information of each pixel and its neighborswithout bias.3. The convolution kernel should take into account that ad-jacent triangles are in different orientations.4. The pooling kernel should reduce the image froma higher subdivision to a lower subdivision of theSpherePHD.To meet the first condition, our kernel needs to be a col-lection of triangles as our SpherePHD has triangular pixels. The mentioning of spherical polyhedron throughout this paper willrefer specifically to the icosahedral spherical polyhedron (SpherePHD)constructed through a geodesic icosahedron, unless specified otherwise. igure 5. From left to right: proposed pooling kernel shape, thesame pooling kernel applied onto the adjacent triangle, proposedconvolution kernel shape, the same convolution kernel appliedonto the adjacent triangle, and the convolution kernel on 12 origi-nal vertices of icosahedron (for better understanding, see the yel-low kernel in Fig. 6).
Our kernel must also be applicable to the 12 vertices thatare connected to 5 triangles while still being applicable toall the other vertex points connected to 6 triangles. For thisreason, the vertices of the kernel should not be connectedto more than 5 triangles; if the vertices are connected tomore than 5 triangles, those vertices would not be able toconvolve at the triangles connected to the 12 original icosa-hedron’s vertices.To satisfy the second condition, the triangular pixel thatis being convolved should be at the center of the kernel. Ifnot, the output of the convolution on pixel of interest wouldbe assigned to its neighboring pixel causing a shift for thegiven pixel. On the spherical surface, when such assign-ment happens, the direction of shifting varies for all of theconvolution output and results in a disoriented convolutionoutput.Concerning the third condition, because triangular pixelsadjacent to each other in our SpherePHD are oriented dif-ferently, we must design a kernel that can be applied to eachof the triangles in their respective orientations.For the last condition, the pooling kernel can be shapedso that the n th subdivision polyhedron can be downsampledinto the ( n − th subdivision polyhedron. To design sucha pooling kernel, we reverse the method in which the subdi-visions are formed. In the pooling stage, the pooling kernelis dependent on how the triangles are subdivided in the con-struction process. For example, if we subdivide a triangleinto n smaller triangles, we can use a pooling kernel thattakes the same n smaller triangles to form one larger trian-gle. However, for simplicity we subdivide a triangle into 4( ) smaller triangles.Our convolution kernel and pooling kernel that meet theabove criteria are given in Fig. 5. These kernels are appliedin the same manner to every pixel of the SpherePHD repre-sentation. Figure 6 shows how to apply the proposed kernelto the SpherePHD representation. Unlike rectangular images, omni-directional imageshave no clear reference direction, so the direction of thekernel becomes ambiguous. To overcome this ambiguity,we set 2 of the 12 vertices of SpherePHD as the north and
Figure 6. The visualization of how the kernel is applied toSpherePHD representation. Yellow kernel shows the case whenthe kernel is located at the vertex of the icosahedron. Purple ker-nel shows the case when the kernel is located at the pole. south poles and use the poles to define the orientation of allpixels to be either upward or downward. We use two kernelshapes which share the same weights for the upward anddownward pixels. Furthermore, the order of kernel weightis configured so that the two kernels are 180 ◦ rotations ofeach other. The proposed kernel is expected to learn 180 ◦ rotation-invariant properties, making the kernels more ro-bust to rotating environments. We show the feasibility ofour kernel design in Sec. 4.1, as we compare the perfor-mance of our kernel weight assignment, as opposed to othernon-rotated kernel assignments. Utilizing our SpherePHD representation from Sec. 3.3and our kernels from Sec. 3.4, we propose a CNN for omni-directional images. We implement our method using con-ventional CNN implementations that already exist in opendeep learning libraries.Thanks to the SpherePHD representation and our ker-nels, a convolution layer maintains the image size with-out padding. Also, a pooled layer has one less subdivisionthan the previous layer. In other words, the n th subdivisionSpherePHD turns into the ( n − th subdivision SpherePHDafter a pooling layer. Depending on the dimension of thedesired output, we can adjust the number of subdivision. Convolution layer
To implement the convolution layerin SpherePHD using a conventional 2-dimensional convolu-tion method, we first make the location indices representingthe locations of pixels for each subdivision. Using the in-dices for a given subdivision, we represent the SpherePHDimages as 2-D tensors (as opposed to 3-D tensors for con-ventional images). We then stack the indices of n neighbor-ing pixels in another dimension, and map the correspond-ing pixel values to the stacked indices (to get an insightabout our stacking method, refer to the “im2col” functionin MATLAB). This makes 3-D tensors where one dimen-sion is filled with n neighboring pixel values of the image.With this representation, we can use conventional 2-D con-volution using a kernel of size × n . This effectively mim-ics the convolution on the spherical surface with a kernel ofsize n . The output of the convolution is the 2-D tensors of igure 7. Tensor-wise implementation of our proposed convolu-tion and pooling methods. SpherePHD images with the same subdivision as before.
Pooling layer
Implementation of pooling layer is verysimilar to that of the convolution layer in that we use thesame method to stack the neighboring pixels. For images ofthe n th subdivision, we take the indices of pixels where thepooled values would be positioned in the resulting ( n − th subdivision images. Then we stack the indices of neighbor-ing pixels to be pooled with, and we map the correspondingpixel values to the indices. After that, the desired poolingoperation ( e.g . max, min, average) is applied to the stackedvalues. The output of pooling is the 2-D tensors of ( n − th subdivision SpherePHD images.Figure 7 shows a graphical representation of the convo-lution (upper) and the pooling (lower).
4. Experiments
We tested the feasibility of our method on three tasks:classification, object detection, and semantic segmentation.We compared the classification performance with MNIST[7] images which are projected onto the SpherePHD, cubemap, and ERP representations with random positions andrandom orientations. We also assessed the object detectionand semantic segmentation performances on the SYNTHIAsequence dataset [17] transformed to aforementioned rep-resentations with random tilting. Additionally, we evalu-ated the semantic segmentation performance on the Stan-ford2D3D dataset to check the feasibility on real data.
Dataset
We made three types of spherical MNISTdatasets by projecting 70k original MNIST images ontoSpherePHD, cube map, and ERP representations with ran-dom positions and random orientations as shown in Fig. 8.
Figure 8. From left to right: ERP, cube map, SpherePHD repre-sentations of MNIST image. These are the three different types ofinput images. All images represent MNIST digit 5.
By randomly changing the position and the orientation ofprojection, the number of training and test images were aug-mented from 60k and 10k to 1200k and 700k, respectively.We determined the image size of SpherPHD to be 3 timessubdivided size, which is × × ) , to maintainsimilar resolution with × original MNIST images. Tomaintain the resolution of all datasets consistent, the sizesof cube map and ERP representations were adjusted basedon the number of pixels on the equator of the SpherPHD im-age. The number of pixels along the equator of all datasetsbecame equal by configuring the size of cube map image as × × pixels and the size of ERP image as × . Implementation details
We designed a single neu-ral network as fully convolutional structure for all threedatasets. In other words, we used the same structure butchanged the convolution and pooling methods according tothe type of input representation. To compare the perfor-mance of the networks with the same structure and the sameparameter scale, we used a global average pooling layerinstead of using a fully connected layer for the classifica-tion task, inspired by NiN [11]. Due to the fully convolu-tional network structure, the parameter scale of the networkis only dependent on the kernel size, being independent onthe input image size. We also minimized the difference be-tween kernel sizes by using × kernels shown in Fig. 5 onour method and × kernels on the other methods. The net-works used in the experiment have two pairs of convolutionand max pooling layers followed by a pair of convolutionand global average pooling layers. Result
To understand the effect of irregularity that wedefined on each image representation, we measured theperformance of the representations according to the po-sitions of MNIST digits in terms of latitude and longi-tude, as shown in Fig. 9. In the result along the latitude,we can see that our method gives relatively uniform accu-racy, although the accuracies near -90 ◦ and 90 ◦ are slightlydropped. This result is consistent with the variation of ir-regularity of SpherPHD which has relatively small varia-tion of irregularity, as shown in Fig. 10. Results for cubemap and ERP representations also follow the variation ofirregularity. The regions where the variation of irregular-ity is large ( e.g . edge and vertex) match with the regionswhere accuracy decreases. In the result along the longitude,we can also see the same tendency but the result from theERP representation shows additional accuracy drop due to igure 9. MNIST classification accuracy for 700k test imagesalong latitude and longitude. The number of samples along lati-tude and longitude follows uniform distribution. These results arehighly related with the distribution of the irregularity values alonglatitude and longitude shown in Fig. 10.Figure 10. Distribution of irregularity values defined in Sec. 3.1on the sphere surface. The red cross mark represents the point at( latitude, longitude)=(0, 0) on the sphere surface. The colors foreach representation indicate relative scales of irregularity.Table 1. MNIST classification results of the three methods correct predictions test set size accuracy (%)SpherePHD 616,920 700,000 88.13ERP 528,577 700,000 75.51Cube padding 521,937 700,000 74.56 Figure 11. MNIST classification results with different kernels the discontinuity on image boundaries. Table 1 shows theoverall average accuracies of all representations. In addi-tion, Fig. 11 shows the comparison of the performance ofour kernel weight assignment to other non-rotated kernelassignments, which shows the effectiveness of our kerneldesign described in Sec. 3.5.
Dataset
The SYNTHIA dataset is a vitrual road drivingimage dataset [17]. Each sequence consists of front, right,left, and back NFoV images of a driving vehicle, along withthe ground truth labels for each object in each scene. Sincethe camera centers for the four directions are the same ata given moment, we can make a 360 ◦ image for the scene.We projected the scenes onto SpherePHD, cube map, andERP representations. We conducted two different experi- ments for the detection task. One is a no-rotation version inwhich the SYNTHIA images are projected without rotation.The other one is a rotation version created by rotating 360 ◦ SYNTHIA images in random orientations.
Implementation details
We performed the vehicle de-tection test using SpherePHD, cube map and ERP represen-tations. To compare the detection accuracies of the repre-sentations fairly, we used similar CNN architectures of thesame parameter scale (based on YOLO architecture [15]),having the same number of layers. To detect objects in vari-ous orientations of 360 ◦ images, we used a bounding circleinstead of a bounding box. Result
As shown in Table 2, when 360 ◦ images (18ktrain and 4.5k test) are not tilted, where the vehicles aremainly located near the equator, the ERP representationyields higher accuracy than ours. The reason is that, inthis case, the shape distortion of target objects near theequator could be negligible. However, when 360 ◦ images(180k, train and 45k test) are tilted, SpherePHD works bet-ter while the performance of ERP representation is severelydegraded. Even though data augmentation generally in-creases the performance of network, the detection accuracyof ERP representation decreases on the contrary. Also, thedetection accuracy of the cube map representation is lowerthan ours because the cube map has the discontinuity of ker-nel orientation at the top and bottom faces of the cube map.Some detection results are shown in Fig. 12. Dataset
We used the Stanford2D3D real-world indoorscene dataset [1] provided in ERP images as well as SYN-THIA driving sequence dataset [17]. SYNTHIA and Stan-ford2D3D datasets, which have 16 and 39 classes of seman-tic labels respectively, are transformed to SpherPHD, cubemap, ERP representations. As in Sec. 4.2, we also aug-mented the size of the datasets by tilting the camera ran-domly.
Implementation details
We designed a neural networkas a CNN-based autoencoder structure for all two datasets.We kept the parameter scales of all 360 ◦ image representa-tions consistent. Among many kinds of unpooling methods,We chose a max unpooling method for the decoder. A maxunpooling layer of SpherePHD reutilizes the indices used inour pooling layer to get a higher subdivision SpherPHD. Results
The evaluation metrics used for semantic seg-mentation are the average of class accuracies and the over-all pixel accuracy. We evaluate on both metrics because theoverall pixel accuracy does not necessarily reflect the ac-curacy of classes that only have few pixels; when classeslike the wall and floor, which take up a large portion ofthe pixels, have high accuracies the overall accuracy canbe skewed. Thus we also evaluated on the average of classaccuracies. Table 3 shows the quantitative results of the igure 12. Vehicle detection results of the SYNTHIA dataset.From top to bottom, results from SpherePHD, cube map, and ERPrepresentations. Red circles are the predicted bounding circles andblue circles are the ground truths. These images are test samplesfrom the rotation-augmented set.Table 2. Detection average precision (AP) of three different imagerepresentations (%)
SpherePHD ERP cube mapSYNTHIA 43.00 56.04 30.13SYNTHIA(rotation-augmented) 64.52 39.87 26.03 semantic segmentation experiment. For both datasets, ourSpherPHD method outperforms other methods. Even if theaccuracies from the Stanford2D3D dataset are much lowerthan the accuracies from SYNTHIA due to the much highernumber of classes and the noise in real-world data, ourmethod still maintains higher accuracies than other methodswith large gaps. Figure 13 shows the semantic segmentationresults for different representations.
5. Conclusion
Despite the advantages of 360 ◦ images, CNNs have notbeen successfully applied to 360 ◦ images because of the Figure 13. Semantic segmentation results of the Stanford2D3Ddataset. From top to bottom: results from SpherePHD, cube map,and ERP representations. From left to right: input image, networkoutput, and ground truth.Table 3. The average of class accuracies and the overall pixel ac-curacy of three different image representations (%)
SpherePHD ERP cube mapper class overall per class overall per class overallSYNTHIA 70.08 97.20 62.69 95.07 36.07 66.04Stanford2D3D(real dataset) 26.40 51.40 17.97 35.02 17.42 32.38 shape distortion due to nonuniform resolving power andthe discontinuity at image borders of the different repre-sentation methods. To resolve these problems, we pro-posed a new representation for 360 ◦ images, SpherePHD.The proposed representation is based on a spherical poly-hedron derived from an icosahedron, and it has less irreg-ularity than ERP and cube map representations. We alsoproposed our own convolution and pooling methods to ap-ply CNNs on the SpherePHD representation and providedthe details of these implementations, which allow to ap-ply the SpherePHD representation to existing CNN-basednetworks. Finally, we demonstrated the feasibility of theproposed methods through classification, detection, and se-mantic segmentation tasks using the MNIST, SYNTHIA,and Stanford2D3D datasets. Acknowledgement
This work was supported by Samsung Research Fund-ing Center of Samsung Electronics under Project Num-ber SRFC-TC1603-05 and National Research Foundationof Korea (NRF) grant funded by the Korea government(MSIT) (NRF-2018R1A2B3008640). eferences [1] I. Armeni, A. Sax, A. R. Zamir, and S. Savarese. Joint 2D-3D-Semantic Data for Indoor Scene Understanding.
ArXive-prints , Feb. 2017. 2, 7[2] P. Bourke. Converting an equirectangular image into an-other equirectangular image. http://paulbourke.net/miscellaneous/sphere2sphere/ , 2017. 2, 3[3] C. Brown. Bringing pixels front andcenter in vr video. https://blog.google/products/google-ar-vr/bringing-pixels-front-and-center-vr-video/ ,2017. 3[4] H.-T. Cheng, C.-H. Chao, J.-D. Dong, H.-K. Wen, T.-L. Liu,and M. Sun. Cube padding for weakly-supervised saliencyprediction in 360 videos. In
The IEEE Conference on Com-puter Vision and Pattern Recognition (CVPR) , June 2018. 3[5] T. S. Cohen, M. Geiger, J. K¨ohler, and M. Welling. Sphericalcnns. In arXiv preprint arXiv:1801.10130 , 2018. 3[6] B. Coors, A. Paul Condurache, and A. Geiger. Spherenet:Learning spherical representations for detection and classifi-cation in omnidirectional images. In
The European Confer-ence on Computer Vision (ECCV) , September 2018. 2, 3[7] L. Deng. The mnist database of handwritten digit images formachine learning research [best of the web].
IEEE SignalProcessing Magazine , 29(6):141–142, 2012. 2, 6[8] H.-N. Hu, Y.-C. Lin, M.-Y. Liu, H.-T. Cheng, Y.-J. Chang,and M. Sun. Deep 360 pilot: Learning a deep agent forpiloting through 360 sports videos. In
Proc. CVPR , pages1396–1405, 2017. 2[9] A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenetclassification with deep convolutional neural networks. InF. Pereira, C. J. C. Burges, L. Bottou, and K. Q. Weinberger,editors,
Advances in Neural Information Processing Systems25 , pages 1097–1105. Curran Associates, Inc., 2012. 1[10] W.-S. Lai, Y. Huang, N. Joshi, C. Buehler, M.-H. Yang, andS. B. Kang. Semantic-driven generation of hyperlapse from360 degree video.
IEEE transactions on visualization andcomputer graphics , 24(9):2610–2621, 2018. 2[11] M. Lin, Q. Chen, and S. Yan. Network in network. arXivpreprint arXiv:1312.4400 , 2013. 6[12] J. Long, E. Shelhamer, and T. Darrell. Fully convolutionalnetworks for semantic segmentation.
CoRR , abs/1411.4038,2014. 1[13] D. Maturana and S. Scherer. Voxnet: A 3d convolutionalneural network for real-time object recognition. In
IEEE/RSJInternational Conference on Intelligent Robots and Systems ,page 922 928, September 2015. 1[14] R. Monroy, S. Lutz, T. Chalasani, and A. Smolic. Salnet360:Saliency maps for omni-directional images with cnn.
SignalProcessing: Image Communication , 2018. 2, 3[15] J. Redmon, S. Divvala, R. Girshick, and A. Farhadi. Youonly look once: Unified, real-time object detection. In
TheIEEE Conference on Computer Vision and Pattern Recogni-tion (CVPR) , June 2016. 1, 7[16] S. Ren, K. He, R. B. Girshick, and J. Sun. Faster R-CNN:towards real-time object detection with region proposal net-works.
CoRR , abs/1506.01497, 2015. 1 [17] G. Ros, L. Sellart, J. Materzynska, D. Vazquez, and A. M.Lopez. The synthia dataset: A large collection of syntheticimages for semantic segmentation of urban scenes. In
TheIEEE Conference on Computer Vision and Pattern Recogni-tion (CVPR) , June 2016. 2, 6, 7[18] Y.-C. Su and K. Grauman. Learning spherical convolutionfor fast features from 360 imagery. In
Advances in NeuralInformation Processing Systems , pages 529–539, 2017. 3[19] Y.-C. Su and K. Grauman. Making 360 video watchablein 2d: Learning videography for click free viewing. arXivpreprint , 2017. 2[20] Y.-C. Su, D. Jayaraman, and K. Grauman. Pano2vid: Au-tomatic cinematography for watching 360 videos. In
AsianConference on Computer Vision , pages 154–171. Springer,2016. 2[21] K. Tateno, N. Navab, and F. Tombari. Distortion-aware con-volutional filters for dense prediction in panoramic images.In
The European Conference on Computer Vision (ECCV) ,September 2018. 3[22] Y. Wenyan, Q. Yanlin, C. Francesco, F. Lixin, and K. Joni-Kristian. Object detection in equirectangular panorama. arXiv preprint arXiv:1805.08009 , 2018. 2, 3[23] J. Xiao, K. A. Ehinger, A. Oliva, and A. Torralba. Recogniz-ing scene viewpoint using panoramic place representation.In2012 IEEE Conference on Computer Vision and PatternRecognition