US 11,704,537 B2
Octree-based convolutional neural network
Pengshuai Wang, Redmond, WA (US); Yang Liu, Redmond, WA (US); and Xin Tong, Redmond, WA (US)
Assigned to Microsoft Technology Licensing, LLC, Redmond, WA (US)
Appl. No. 16/606,653
Filed by MICROSOFT TECHNOLOGY LICENSING, LLC, Redmond, WA (US)
PCT Filed Apr. 20, 2018, PCT No. PCT/US2018/028458
§ 371(c)(1), (2) Date Oct. 18, 2019,
PCT Pub. No. WO2018/200316, PCT Pub. Date Nov. 1, 2018.
Claims priority of application No. 201710297300.4 (CN), filed on Apr. 28, 2017.
Prior Publication US 2020/0042863 A1, Feb. 6, 2020
Int. Cl. G06N 3/04 (2023.01); G06F 16/901 (2019.01); G06F 17/15 (2006.01); G06N 3/08 (2023.01)
CPC G06N 3/04 (2013.01) [G06F 16/9027 (2019.01); G06F 17/15 (2013.01); G06N 3/08 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A device comprising:
a memory configured to store an octree representing a three-dimensional shape, nodes of the octree including an empty node and a non-empty node, the empty node excluding the three-dimensional shape and being a leaf node of the octree, and the non-empty node including at least a part of the three-dimensional shape; and
a processing unit coupled to the memory and configured to perform acts including:
obtaining the octree representing the three-dimensional shape from the memory, including one or more of: an index of a node of the octree, a label of a node of the octree, shape data of a node of the octree, a hierarchical structure of the octree; and
for a node in the octree with a depth associated with a convolutional layer of a convolutional neural network, performing a convolutional operation of the convolutional layer to obtain an output of the convolutional layer.
 
10. A computer-implemented method comprising:
obtaining an octree representing a three-dimensional shape, nodes of the octree including an empty node and a non-empty node, the empty node excluding the three-dimensional shape and being a leaf node of the octree, and the non-empty node including at least a part of the three-dimensional shape;
for a node in the octree with a depth associated with a convolutional layer of a convolutional neural network, performing a convolutional operation of the convolutional layer to obtain an output of the convolutional layer; and
performing a down-sampling operation on shape data of a node of the octree, or an up-sampling operation on shape data of a node of the octree, or both.