# How do I prepare this 3D data for NN?

How do I prepare the info of 3D models to use with NN? For example, I have thousands of models with boxes similar to the ones in the image below. I can extract the vertices and their normals that make up the faces of these boxes. Similarly, I would like to prepare the info of the red-shaded surfaces, again I have their vertices and their normals. For future studies, I will have more complex shapes such as cylinders, pyramids,...etc. What would be the best way to represent these complex shapes for NN?

Update: These boxes don't stay in the same position, see the second image I added. I will have different geometric models and different red-shaded areas on the surfaces of these objects. The NN output would be a number for each surface of these boxes/objects. The number represents the surface temperature. The input would be the following:

1- Some climate information such as (air temperature, humidity, ...etc.) 3- The location and size of the buildings that are represented in boxes/or maybe other shapes. 4- The size and the location of the red-shaded areas (red-shaded areas represent the shadow cast by buildings. 5- Material of each surface (concrete, brick,...etc).

• Why not as a tensor ? Sep 14 at 5:07
• What do you want the NN to look at? A picture is usually treated as pixels; correspondingly a 3D picture could be treated as voxels. Sep 14 at 8:59
• @hanugm what data goes in the tensor? Sep 14 at 9:00
• Intensity values in 3D simulation as you told. @user253751 Sep 14 at 9:44
• the advantage of voxels is that they are equivalent to pixels, which we know work well. The disadvantage is that they're a lot of data! It would be convenient if the vertex coordinates etc could somehow be passed to a NN but I can't imagine an NN learning to work with that input. Sep 14 at 9:48

## 1 Answer

I think, that the answer depends on the application, but a possible choice would be store it as a mesh - a list of vertices $$V$$ and edges $$E$$. Instead of edges, one can work with polygons, and define connectivity $$F$$ - for triplets of vertices $$(v_i, v_j, v_k)$$.

There is a nice paper on Mesh CNN that can handle various geometric object.

For the special case of boxes maybe there is a more educated approach, but since you would like to handle later more complex shapes, I would suggest to work with this architecture from the start.

• Very nice paper but the methodology isn't suitable for my workflow. I just updated my post to include more info on what I want the NN to look for. Sep 16 at 5:19