ocnn 2.2.8__py3-none-any.whl → 2.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. ocnn/__init__.py +24 -24
  2. ocnn/dataset.py +160 -160
  3. ocnn/models/__init__.py +29 -29
  4. ocnn/models/autoencoder.py +155 -155
  5. ocnn/models/hrnet.py +192 -192
  6. ocnn/models/image2shape.py +128 -128
  7. ocnn/models/lenet.py +46 -46
  8. ocnn/models/ounet.py +94 -94
  9. ocnn/models/resnet.py +53 -53
  10. ocnn/models/segnet.py +72 -72
  11. ocnn/models/unet.py +105 -105
  12. ocnn/modules/__init__.py +26 -26
  13. ocnn/modules/modules.py +303 -303
  14. ocnn/modules/resblocks.py +158 -158
  15. ocnn/nn/__init__.py +45 -44
  16. ocnn/nn/kernels/__init__.py +14 -0
  17. ocnn/nn/kernels/autotuner.py +416 -0
  18. ocnn/nn/kernels/config.py +67 -0
  19. ocnn/nn/kernels/conv_bwd_implicit_gemm.py +229 -0
  20. ocnn/nn/kernels/conv_bwd_implicit_gemm_splitk.py +347 -0
  21. ocnn/nn/kernels/conv_fwd_implicit_gemm.py +109 -0
  22. ocnn/nn/kernels/conv_fwd_implicit_gemm_splitk.py +150 -0
  23. ocnn/nn/kernels/utils.py +44 -0
  24. ocnn/nn/octree2col.py +53 -53
  25. ocnn/nn/octree2vox.py +50 -50
  26. ocnn/nn/octree_align.py +46 -46
  27. ocnn/nn/octree_conv.py +430 -429
  28. ocnn/nn/octree_conv_t.py +148 -0
  29. ocnn/nn/octree_drop.py +55 -55
  30. ocnn/nn/octree_dwconv.py +222 -222
  31. ocnn/nn/octree_gconv.py +79 -79
  32. ocnn/nn/octree_interp.py +196 -196
  33. ocnn/nn/octree_norm.py +126 -126
  34. ocnn/nn/octree_pad.py +39 -39
  35. ocnn/nn/octree_pool.py +200 -200
  36. ocnn/octree/__init__.py +22 -22
  37. ocnn/octree/octree.py +770 -770
  38. ocnn/octree/points.py +384 -323
  39. ocnn/octree/shuffled_key.py +115 -115
  40. ocnn/utils.py +205 -205
  41. {ocnn-2.2.8.dist-info → ocnn-2.3.0.dist-info}/METADATA +117 -111
  42. ocnn-2.3.0.dist-info/RECORD +45 -0
  43. {ocnn-2.2.8.dist-info → ocnn-2.3.0.dist-info}/WHEEL +1 -1
  44. {ocnn-2.2.8.dist-info → ocnn-2.3.0.dist-info}/licenses/LICENSE +21 -21
  45. ocnn-2.2.8.dist-info/RECORD +0 -36
  46. {ocnn-2.2.8.dist-info → ocnn-2.3.0.dist-info}/top_level.txt +0 -0
@@ -1,111 +1,117 @@
1
- Metadata-Version: 2.4
2
- Name: ocnn
3
- Version: 2.2.8
4
- Summary: Octree-based Sparse Convolutional Neural Networks
5
- Home-page: https://github.com/octree-nn/ocnn-pytorch
6
- Author: Peng-Shuai Wang
7
- Author-email: wangps@hotmail.com
8
- License: MIT
9
- Classifier: Programming Language :: Python :: 3
10
- Classifier: Operating System :: OS Independent
11
- Requires-Python: >=3.6
12
- Description-Content-Type: text/markdown
13
- License-File: LICENSE
14
- Requires-Dist: torch
15
- Requires-Dist: torchvision
16
- Requires-Dist: numpy
17
- Requires-Dist: packaging
18
- Dynamic: author
19
- Dynamic: author-email
20
- Dynamic: classifier
21
- Dynamic: description
22
- Dynamic: description-content-type
23
- Dynamic: home-page
24
- Dynamic: license
25
- Dynamic: license-file
26
- Dynamic: requires-dist
27
- Dynamic: requires-python
28
- Dynamic: summary
29
-
30
- # O-CNN
31
-
32
- **[Documentation](https://ocnn-pytorch.readthedocs.io)**
33
-
34
- [![Documentation Status](https://readthedocs.org/projects/ocnn-pytorch/badge/?version=latest)](https://ocnn-pytorch.readthedocs.io/en/latest/?badge=latest)
35
- [![Downloads](https://static.pepy.tech/badge/ocnn)](https://pepy.tech/project/ocnn)
36
- [![Downloads](https://static.pepy.tech/badge/ocnn/month)](https://pepy.tech/project/ocnn)
37
- [![PyPI](https://img.shields.io/pypi/v/ocnn)](https://pypi.org/project/ocnn/)
38
-
39
- This repository contains the **pure PyTorch**-based implementation of
40
- [O-CNN](https://wang-ps.github.io/O-CNN.html). The code has been tested with
41
- `Pytorch>=1.6.0`, and `Pytorch>=1.9.0` is preferred. The *original*
42
- implementation of O-CNN is based on C++ and CUDA and can be found
43
- [here](https://github.com/Microsoft/O-CNN), which has received
44
- [![stars - O-CNN](https://img.shields.io/github/stars/microsoft/O-CNN?style=social)](https://github.com/microsoft/O-CNN) and
45
- [![forks - O-CNN](https://img.shields.io/github/forks/microsoft/O-CNN?style=social)](https://github.com/microsoft/O-CNN).
46
-
47
-
48
- O-CNN is an octree-based 3D convolutional neural network framework for 3D data.
49
- O-CNN constrains the CNN storage and computation into non-empty sparse voxels
50
- for efficiency and uses the `octree` data structure to organize and index these
51
- sparse voxels. Currently, this type of 3D convolution is known as Sparse
52
- Convolution in the research community.
53
-
54
-
55
- The concept of Sparse Convolution in O-CNN is the same with
56
- [SparseConvNet](https://openaccess.thecvf.com/content_cvpr_2018/papers/Graham_3D_Semantic_Segmentation_CVPR_2018_paper.pdf),
57
- [MinkowskiNet](https://github.com/NVIDIA/MinkowskiEngine), and
58
- [SpConv](https://github.com/traveller59/spconv).
59
- The key difference is that our O-CNN uses `octrees` to index the sparse voxels,
60
- while these works use `Hash Tables`. However, I believe that `octrees` may be
61
- the right choice for Sparse Convolution. With `octrees`, I can implement the
62
- Sparse Convolution with pure PyTorch. More importantly, with `octrees`, I can
63
- also build efficient transformers for 3D data --
64
- [OctFormer](https://github.com/octree-nn/octformer), which is extremely hard
65
- with `Hash Tables`.
66
-
67
-
68
- Our O-CNN is published in SIGGRAPH 2017, SparseConvNet is published in CVPR
69
- 2018, and MinkowskiNet is published in CVPR 2019. Actually, our O-CNN was
70
- submitted to SIGGRAPH in the end of 2016 and was officially accepted in March,
71
- 2017. <!-- The camera-ready version of our O-CNN was submitted to SIGGRAPH in April, 2018. -->
72
- We just did not post our paper on Arxiv during the review process of SIGGRAPH.
73
- Therefore, **the idea of constraining CNN computation into sparse non-emtpry
74
- voxels, i.e. Sparse Convolution, is first proposed by our O-CNN**.
75
-
76
- <!--
77
- Developed in collaboration with authors from [PointCNN](https://arxiv.org/abs/1801.07791),
78
- [Dr. Yangyan Li](https://yangyan.li/) and [Prof. Baoquan Chen](https://baoquanchen.info/),
79
- -->
80
- This library supports point cloud processing from the ground up.
81
- The library provides essential components for converting raw point clouds into
82
- octrees to perform convolution operations. Of course, it also supports other 3D
83
- data formats, such as meshes and volumetric grids, which can be converted into
84
- octrees to leverage the library's capabilities.
85
-
86
-
87
- ## Key benefits of ocnn-pytorch
88
-
89
- - **Simplicity**. The ocnn-pytorch is based on pure PyTorch, it is portable and
90
- can be installed with a simple command:`pip install ocnn`. Other sparse
91
- convolution frameworks heavily rely on C++ and CUDA, and it is complicated to
92
- configure the compiling environment.
93
-
94
- - **Efficiency**. The ocnn-pytorch is very efficient compared with other sparse
95
- convolution frameworks. It only takes 18 hours to train the network on
96
- ScanNet for 600 epochs with 4 V100 GPUs. For reference, under the same
97
- training settings, MinkowskiNet 0.4.3 takes 60 hours and MinkowskiNet 0.5.4
98
- takes 30 hours.
99
-
100
- ## Citation
101
-
102
- ```bibtex
103
- @article {Wang-2017-ocnn,
104
- title = {{O-CNN}: Octree-based Convolutional Neural Networksfor {3D} Shape Analysis},
105
- author = {Wang, Peng-Shuai and Liu, Yang and Guo, Yu-Xiao and Sun, Chun-Yu and Tong, Xin},
106
- journal = {ACM Transactions on Graphics (SIGGRAPH)},
107
- volume = {36},
108
- number = {4},
109
- year = {2017},
110
- }
111
- ```
1
+ Metadata-Version: 2.4
2
+ Name: ocnn
3
+ Version: 2.3.0
4
+ Summary: Octree-based Sparse Convolutional Neural Networks
5
+ Home-page: https://github.com/octree-nn/ocnn-pytorch
6
+ Author: Peng-Shuai Wang
7
+ Author-email: wangps@hotmail.com
8
+ License: MIT
9
+ Classifier: Programming Language :: Python :: 3
10
+ Classifier: Operating System :: OS Independent
11
+ Requires-Python: >=3.6
12
+ Description-Content-Type: text/markdown
13
+ License-File: LICENSE
14
+ Requires-Dist: torch
15
+ Requires-Dist: torchvision
16
+ Requires-Dist: numpy
17
+ Requires-Dist: packaging
18
+ Dynamic: author
19
+ Dynamic: author-email
20
+ Dynamic: classifier
21
+ Dynamic: description
22
+ Dynamic: description-content-type
23
+ Dynamic: home-page
24
+ Dynamic: license
25
+ Dynamic: license-file
26
+ Dynamic: requires-dist
27
+ Dynamic: requires-python
28
+ Dynamic: summary
29
+
30
+ # O-CNN
31
+
32
+ **[Documentation](https://ocnn-pytorch.readthedocs.io)**
33
+
34
+ [![Documentation Status](https://readthedocs.org/projects/ocnn-pytorch/badge/?version=latest)](https://ocnn-pytorch.readthedocs.io/en/latest/?badge=latest)
35
+ [![Downloads](https://static.pepy.tech/badge/ocnn)](https://pepy.tech/project/ocnn)
36
+ [![Downloads](https://static.pepy.tech/badge/ocnn/month)](https://pepy.tech/project/ocnn)
37
+ [![PyPI](https://img.shields.io/pypi/v/ocnn)](https://pypi.org/project/ocnn/)
38
+
39
+ This repository contains the **pure PyTorch**-based implementation of
40
+ [O-CNN](https://wang-ps.github.io/O-CNN.html). The code has been tested with
41
+ `Pytorch>=1.6.0`, and `Pytorch>=1.9.0` is preferred. The *original*
42
+ implementation of O-CNN is based on C++ and CUDA and can be found
43
+ [here](https://github.com/Microsoft/O-CNN), which has received
44
+ [![stars - O-CNN](https://img.shields.io/github/stars/microsoft/O-CNN?style=social)](https://github.com/microsoft/O-CNN) and
45
+ [![forks - O-CNN](https://img.shields.io/github/forks/microsoft/O-CNN?style=social)](https://github.com/microsoft/O-CNN).
46
+
47
+
48
+ O-CNN is an octree-based 3D convolutional neural network framework for 3D data.
49
+ O-CNN constrains the CNN storage and computation into non-empty sparse voxels
50
+ for efficiency and uses the `octree` data structure to organize and index these
51
+ sparse voxels. Currently, this type of 3D convolution is known as Sparse
52
+ Convolution in the research community.
53
+
54
+
55
+ The concept of Sparse Convolution in O-CNN is the same with
56
+ [SparseConvNet](https://openaccess.thecvf.com/content_cvpr_2018/papers/Graham_3D_Semantic_Segmentation_CVPR_2018_paper.pdf),
57
+ [MinkowskiNet](https://github.com/NVIDIA/MinkowskiEngine), and
58
+ [SpConv](https://github.com/traveller59/spconv).
59
+ The key difference is that our O-CNN uses `octrees` to index the sparse voxels,
60
+ while these works use `Hash Tables`. However, I believe that `octrees` may be
61
+ the right choice for Sparse Convolution. With `octrees`, I can implement the
62
+ Sparse Convolution with pure PyTorch. More importantly, with `octrees`, I can
63
+ also build efficient transformers for 3D data --
64
+ [OctFormer](https://github.com/octree-nn/octformer), which is extremely hard
65
+ with `Hash Tables`.
66
+
67
+
68
+ Our O-CNN is published in SIGGRAPH 2017, SparseConvNet is published in CVPR
69
+ 2018, and MinkowskiNet is published in CVPR 2019. Actually, our O-CNN was
70
+ submitted to SIGGRAPH in the end of 2016 and was officially accepted in March,
71
+ 2017. <!-- The camera-ready version of our O-CNN was submitted to SIGGRAPH in April, 2018. -->
72
+ We just did not post our paper on Arxiv during the review process of SIGGRAPH.
73
+ Therefore, **the idea of constraining CNN computation into sparse non-emtpry
74
+ voxels, i.e. Sparse Convolution, is first proposed by our O-CNN**.
75
+
76
+ <!--
77
+ Developed in collaboration with authors from [PointCNN](https://arxiv.org/abs/1801.07791),
78
+ [Dr. Yangyan Li](https://yangyan.li/) and [Prof. Baoquan Chen](https://baoquanchen.info/),
79
+ -->
80
+ This library supports point cloud processing from the ground up.
81
+ The library provides essential components for converting raw point clouds into
82
+ octrees to perform convolution operations. Of course, it also supports other 3D
83
+ data formats, such as meshes and volumetric grids, which can be converted into
84
+ octrees to leverage the library's capabilities.
85
+
86
+ ## Updates
87
+
88
+ - **2026.02.02**: Release `v2.3.0`, incorporating Triton to accelerate
89
+ octree-based sparse convolution in the upcoming release. OctreeConv is even
90
+ **2.5 times faster than the latest spconv**!
91
+ - **2025.12.18**: Release `v2.2.8`, improving neighbor search efficiency.
92
+
93
+
94
+ ## Key benefits of ocnn-pytorch
95
+
96
+ - **Simplicity**. The ocnn-pytorch is based on pure PyTorch, it is portable and
97
+ can be installed with a simple command:`pip install ocnn`. Other sparse
98
+ convolution frameworks heavily rely on C++ and CUDA, and it is complicated to
99
+ configure the compiling environment.
100
+
101
+ - **Efficiency**. The ocnn-pytorch is very efficient compared with other sparse
102
+ convolution frameworks. It is **even 2.5 times faster than the latest spconv
103
+ implementation**! Check the benchmark [code](test/benchmark_conv.py) and
104
+ [results](test/benchmark/results.png) for details.
105
+
106
+ ## Citation
107
+
108
+ ```bibtex
109
+ @article {Wang-2017-ocnn,
110
+ title = {{O-CNN}: Octree-based Convolutional Neural Networksfor {3D} Shape Analysis},
111
+ author = {Wang, Peng-Shuai and Liu, Yang and Guo, Yu-Xiao and Sun, Chun-Yu and Tong, Xin},
112
+ journal = {ACM Transactions on Graphics (SIGGRAPH)},
113
+ volume = {36},
114
+ number = {4},
115
+ year = {2017},
116
+ }
117
+ ```
@@ -0,0 +1,45 @@
1
+ ocnn/__init__.py,sha256=OklIQQwozTf2xldsceBowRnljxu7gQO5VS6mio5CCJQ,558
2
+ ocnn/dataset.py,sha256=2pRZZdS9l7rRy51CpBInILg-nt6egghUVwgJSxUV0NM,5106
3
+ ocnn/utils.py,sha256=YmGdO9xfebh9CllOjdkCQMdBo4bOO811InB9G2G0QS0,6521
4
+ ocnn/models/__init__.py,sha256=KmKgFoWJAoEjcidLeaaJrEvOrxmDfezCcOXFEySICFI,695
5
+ ocnn/models/autoencoder.py,sha256=_QmmaOTJryIh_xpxosaf9uhn-vWI2zhN5wKka-ohmIQ,5749
6
+ ocnn/models/hrnet.py,sha256=i7wQA5VagBO6lRMM76LB99d6tvzIDgbhn--T5qXH6Zg,6492
7
+ ocnn/models/image2shape.py,sha256=74PEAGKb0JLRodkADjaEP-Q3s7zOJWQwczf7IpDR61w,4461
8
+ ocnn/models/lenet.py,sha256=3lDfbFOKNJOKwHRiYMLS_59Pzg5kVpoekFaUtq-FRw8,1708
9
+ ocnn/models/ounet.py,sha256=su88CyhW6qVp3niGyGi8blBbFkaspk5aN4Xt5BoP8mY,3212
10
+ ocnn/models/resnet.py,sha256=mWpLASF4BuIU6tLrpabQizRQEUSSC7vSBLsHspbeJO0,2002
11
+ ocnn/models/segnet.py,sha256=aUQCJ8g-ygJRs-W7B8ApwNU7Br8wmsDc3UI-RRkJoeY,2503
12
+ ocnn/models/unet.py,sha256=zQi-e_3iblMq-1FwstRqDTdeG_nIAtGAc6xwzk6RzlA,4018
13
+ ocnn/modules/__init__.py,sha256=gHFpzESQlofZ0q1ugSoeIajisFdqSs1M5xzfVDpLbmM,1106
14
+ ocnn/modules/modules.py,sha256=vjsvJpnUyaU1UtZtNuOA9kg0acmZu8C8AKAz0-ytxcA,9543
15
+ ocnn/modules/resblocks.py,sha256=6siJrsiJaVBFFjGLB3z9zV7Zng2NcMGDeG5RUHMn8dU,5708
16
+ ocnn/nn/__init__.py,sha256=rFBRkvFUdAYc2vIV0I86IT4HyBahrvsHJyf-RCs6Vno,1919
17
+ ocnn/nn/octree2col.py,sha256=GAnUmCm0vqpvdoVhiteDizsjCUNIO0eIFEfWnFu4Z7A,2084
18
+ ocnn/nn/octree2vox.py,sha256=I0VQpnqJlHaeEbsRBwKb8gnYRana8rSM3l-ypEuKAXI,1474
19
+ ocnn/nn/octree_align.py,sha256=_6Hr9-ihzZhT70wr15XMc4VYb7Ot2USk0B0mOn3YAlE,1650
20
+ ocnn/nn/octree_conv.py,sha256=Ew4fkz1KbholBmBHAHcw-rxw8QoMiMGWDhDV7Aiklr0,14594
21
+ ocnn/nn/octree_conv_t.py,sha256=yhsrSJoUKDjyLa2ZY0-uf9dZ70hdYeYfn5eY96R4BVc,5604
22
+ ocnn/nn/octree_drop.py,sha256=KzlLNklPFQ9IAnWuvk4F6YQ8jg1P2vwgnsIeUE7eLzc,1908
23
+ ocnn/nn/octree_dwconv.py,sha256=8sIusaWJMxd3bwdvVVzDcftC2b7jVHkZod3IxgbC0KQ,7128
24
+ ocnn/nn/octree_gconv.py,sha256=qSAj_TW6vvdc-UKtA7PYSuBf52ijq0CBqLFdVYVpxaE,2849
25
+ ocnn/nn/octree_interp.py,sha256=wQjh11HeHMTDdzb5csek1JzOtqIM0HLvEj_U8NVC9Ps,6912
26
+ ocnn/nn/octree_norm.py,sha256=xyUsaTmRDGv-Qxrl3xOQVlN4HA_1wTtTeB4M_bqc-l8,4398
27
+ ocnn/nn/octree_pad.py,sha256=3zi7lfQkKekUw_Yi3wnFgfDIssVooaJaLFHl1oTLgPU,1282
28
+ ocnn/nn/octree_pool.py,sha256=smVjdRZkV-GT4qPRjw9cEotbZIq5kceltWMqby0_uvU,6464
29
+ ocnn/nn/kernels/__init__.py,sha256=ChciqrgnHca1twUWn02QYjJOWQ1cIyEEksL7wy2mcGc,479
30
+ ocnn/nn/kernels/autotuner.py,sha256=KR4ZiSZX9l-zL0BW-grlc7MJB5fV92rVejsiNVOMDIY,16105
31
+ ocnn/nn/kernels/config.py,sha256=l1Rw6yyrAv0bUEq-oFpcG7nWIeg7xUqOpmAE-mBAW4I,5253
32
+ ocnn/nn/kernels/conv_bwd_implicit_gemm.py,sha256=8Vb3AeVsm9sMOm-MD0pNlrCUTkDH2hz4AMfWgJTP2Ak,10015
33
+ ocnn/nn/kernels/conv_bwd_implicit_gemm_splitk.py,sha256=9wUOtRH56QHaa9HrFb8aktq7ql8ootdQiZXgHaV3QRQ,14602
34
+ ocnn/nn/kernels/conv_fwd_implicit_gemm.py,sha256=Z3VoPtSGrhrtLQHVVqQ0pzy7d40QQqmCA8skFBi4J5Q,4362
35
+ ocnn/nn/kernels/conv_fwd_implicit_gemm_splitk.py,sha256=kjbEZVFxwmxpJy7Loo_hD9pyAiy2cc-cHIqdRcNjYS0,6250
36
+ ocnn/nn/kernels/utils.py,sha256=2ikyv00Om5mHIupLcVANdNL4CvcSNRxbAQ0AGctC9B8,1216
37
+ ocnn/octree/__init__.py,sha256=mrO_05mx5-oaSJuPPqwvUyDJeDFFo3iQNana2-rENGc,608
38
+ ocnn/octree/octree.py,sha256=px3fif8XAlqKFtyxjeGSjmXHwML-hWO-UGDHeI6L75A,27994
39
+ ocnn/octree/points.py,sha256=zGrI55l6KOqXGy-1ak6KcUPtlVMDxwK0H4CjOnVdFhc,13148
40
+ ocnn/octree/shuffled_key.py,sha256=AhXnj3JL1UHxXWrH1QLPJpv_7aKlBI5Eh6CgiJnXE4c,3821
41
+ ocnn-2.3.0.dist-info/licenses/LICENSE,sha256=gOZUTXnEc1Od1G6uwCP9_8Lg24YXkCI6iAsMJoGkUlI,1093
42
+ ocnn-2.3.0.dist-info/METADATA,sha256=sSgEhB3_hM2qa5fVMCmUZoM2CBU0g4e5Nv6dBx-6UoQ,5270
43
+ ocnn-2.3.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
44
+ ocnn-2.3.0.dist-info/top_level.txt,sha256=ayZdVOnxlOke3kgzAlrRh2IEL_qOudwOaEU3xhjtpZ0,5
45
+ ocnn-2.3.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2022 Peng-Shuai Wang <wangps@hotmail.com>
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2022 Peng-Shuai Wang <wangps@hotmail.com>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
@@ -1,36 +0,0 @@
1
- ocnn/__init__.py,sha256=W555npPkf1OoHV4GCBopB1z0NaX8jfBu772D-dcM03k,582
2
- ocnn/dataset.py,sha256=wvclvjlZs9qTeMXWLaO32K5d1VVY9XHSNuVVJEpVeeo,5266
3
- ocnn/utils.py,sha256=XhykveOjHoQd94gjJ5-opzXs-9MOCAzZ34ArZ8mG4sE,6726
4
- ocnn/models/__init__.py,sha256=F9PJRhOPHc1OrwkqcfywEBW0J6jmVW7-IHgWjGpY15U,724
5
- ocnn/models/autoencoder.py,sha256=nkKMtSPPdKhQXRxFaRNZsPjRfWuQet5Gz9FQlyLUlEQ,5904
6
- ocnn/models/hrnet.py,sha256=9W2fi7Fuw0JXDBiZtEoUW2K7ghtpWUm_BWd-mKoHLY0,6684
7
- ocnn/models/image2shape.py,sha256=5djcOHJh2SQCwd5XdLPeL5vlQDNWnRU3tJY3ojRI8aQ,4589
8
- ocnn/models/lenet.py,sha256=ujVBxnn8AKiIKqB4WHxuK728oJe4TZdqZUTTNy8y3zE,1754
9
- ocnn/models/ounet.py,sha256=Z9bJqt_C8uHNw5IzD7q2vR1CH5bMkOrtI0UWSyp74TU,3306
10
- ocnn/models/resnet.py,sha256=_bRaLBYK5yVqklYEvfPjcndWvMpOKaygnSl1pyjT-4w,2029
11
- ocnn/models/segnet.py,sha256=A3KWF-kJQ1M-ByJKv88wfMsdZYccBzP_p9W_0EzNB6w,2575
12
- ocnn/models/unet.py,sha256=1FZbTvmWg6sMYkcZyNxcSr_qN6bfOOag-tIwAoqIPKU,4123
13
- ocnn/modules/__init__.py,sha256=pRJLNGM4F5a3QO2Y6AJqKnaOJqyR4nApVzNQxJ1vJgQ,1132
14
- ocnn/modules/modules.py,sha256=l9pkJUgg7_pz9310eJ_806T7brACIqtTvbcK1eFBw-U,9846
15
- ocnn/modules/resblocks.py,sha256=GHRTwzRX-QG9FnHNgSej3RdJJYSxBVLc5GWQEj7bjjI,5866
16
- ocnn/nn/__init__.py,sha256=GPOng7D-vfs3FCea9jrRKaGumAkyrMz0f5XWGx2v2Fs,1824
17
- ocnn/nn/octree2col.py,sha256=07BGGJD0je0VD-VdS_aKtDo7gWKNWdgojeL1a2n4VRQ,2137
18
- ocnn/nn/octree2vox.py,sha256=QgyxxZvRvw2taHFWCvcGyCFAnFC6D6nfw71HrvwN3PI,1524
19
- ocnn/nn/octree_align.py,sha256=Y12GBKS-F3JtRNaDdDcBFDBvhndoRxeMOVua4RB5HZE,1696
20
- ocnn/nn/octree_conv.py,sha256=a6-lCkJR5NJL7lBKZNWklzQUnDLj6hIysGnr45_xCQk,14942
21
- ocnn/nn/octree_drop.py,sha256=croMHtk0JScDT0nLpdmbiMnkM_b5uVAz6sOEUcta6sY,1963
22
- ocnn/nn/octree_dwconv.py,sha256=cIghi7zyMUGhTd6QsU4PS6K2VlwXaYeLNfZFt2xuVi4,7350
23
- ocnn/nn/octree_gconv.py,sha256=Ogkn7wE49dDdP0X_aBthNfJXMsqcRn3ufJuYQtEEjUI,2928
24
- ocnn/nn/octree_interp.py,sha256=yQVjiKMNLU1XakPeYjW5ArMsw2fxFRZdh90Nn3cWQuE,7108
25
- ocnn/nn/octree_norm.py,sha256=XrSQ7oZKfepYqQIuPU4loaYNae_rgtPpekR0cqTvryg,4524
26
- ocnn/nn/octree_pad.py,sha256=cNIhLvvJknaAOzkY6ScYagBh49P6X2qA8U6K58wFbMA,1321
27
- ocnn/nn/octree_pool.py,sha256=Zn2XLk5SFl6pqMhhKIvu1uZl5ebonFSlPcKr54fOIPA,6664
28
- ocnn/octree/__init__.py,sha256=vKZFc5_r6Gxg5KsPWiCZCR-umWWfWPoE7qBx4PIrUGA,630
29
- ocnn/octree/octree.py,sha256=Fst4ZmnANQZsg7vzQ8fW_TVW26zKi0nyg6ZbuPZlyMM,28752
30
- ocnn/octree/points.py,sha256=-FmVmhXbScI5zD0I-5quan3pvM-CJNOqIVJ1_0fmoms,11396
31
- ocnn/octree/shuffled_key.py,sha256=UJZ4eKNA_7nLbf9FbEvS_3VyrAqnZCOzk1hsPtJianM,3936
32
- ocnn-2.2.8.dist-info/licenses/LICENSE,sha256=YeOS0Plo8Uistv_8ZXdgddmN9GHJKnIiJ5FZ8zTW6Sw,1114
33
- ocnn-2.2.8.dist-info/METADATA,sha256=DYBnALNXkLvt3f9-0oLfa8169mWptp1uGso16iiCTOw,5130
34
- ocnn-2.2.8.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
35
- ocnn-2.2.8.dist-info/top_level.txt,sha256=ayZdVOnxlOke3kgzAlrRh2IEL_qOudwOaEU3xhjtpZ0,5
36
- ocnn-2.2.8.dist-info/RECORD,,