machinevision-toolbox-python 2.3.0__py3-none-any.whl → 2.4.1__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.
- {machinevision_toolbox_python-2.3.0.dist-info → machinevision_toolbox_python-2.4.1.dist-info}/METADATA +8 -6
- {machinevision_toolbox_python-2.3.0.dist-info → machinevision_toolbox_python-2.4.1.dist-info}/RECORD +24 -22
- {machinevision_toolbox_python-2.3.0.dist-info → machinevision_toolbox_python-2.4.1.dist-info}/WHEEL +1 -1
- {machinevision_toolbox_python-2.3.0.dist-info → machinevision_toolbox_python-2.4.1.dist-info}/entry_points.txt +0 -1
- machinevisiontoolbox/BagOfWords.py +13 -1
- machinevisiontoolbox/BundleAdjust.py +983 -980
- machinevisiontoolbox/Camera.py +101 -18
- machinevisiontoolbox/ImageConstants.py +27 -6
- machinevisiontoolbox/ImageCore.py +69 -8
- machinevisiontoolbox/ImageFiducials.py +16 -8
- machinevisiontoolbox/ImageIO.py +8 -0
- machinevisiontoolbox/ImagePointFeatures.py +13 -2
- machinevisiontoolbox/ImageWholeFeatures.py +18 -5
- machinevisiontoolbox/Kernel.py +29 -0
- machinevisiontoolbox/PointCloud.py +17 -4
- machinevisiontoolbox/Sources.py +18 -9
- machinevisiontoolbox/base/__init__.py +1 -0
- machinevisiontoolbox/base/color.py +42 -16
- machinevisiontoolbox/base/imageio.py +541 -443
- machinevisiontoolbox/base/types.py +14 -0
- machinevisiontoolbox/bin/mvtbtool.py +2 -1
- machinevisiontoolbox/blocks/Icons/README.md +28 -0
- machinevisiontoolbox/blocks/Icons/make_icons.py +111 -0
- {machinevision_toolbox_python-2.3.0.dist-info → machinevision_toolbox_python-2.4.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: machinevision-toolbox-python
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.4.1
|
|
4
4
|
Summary: Object-oriented machine vision for Python.
|
|
5
5
|
Project-URL: Homepage, https://github.com/petercorke/machinevision-toolbox-python
|
|
6
6
|
Project-URL: Bug Tracker, https://github.com/pypa/sampleproject/issues
|
|
@@ -18,14 +18,15 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
18
18
|
Classifier: Programming Language :: Python :: 3.11
|
|
19
19
|
Classifier: Programming Language :: Python :: 3.12
|
|
20
20
|
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
21
22
|
Requires-Python: >=3.10
|
|
22
23
|
Requires-Dist: ansitable
|
|
23
24
|
Requires-Dist: matplotlib
|
|
24
25
|
Requires-Dist: mvtb-data
|
|
25
26
|
Requires-Dist: numpy
|
|
26
|
-
Requires-Dist: opencv-contrib-python<
|
|
27
|
-
Requires-Dist: opencv-python<
|
|
28
|
-
Requires-Dist: pgraph-python
|
|
27
|
+
Requires-Dist: opencv-contrib-python<6.0.0,>=4.5
|
|
28
|
+
Requires-Dist: opencv-python<6.0.0,>=4.5
|
|
29
|
+
Requires-Dist: pgraph-python>=0.6.4
|
|
29
30
|
Requires-Dist: pillow
|
|
30
31
|
Requires-Dist: requests
|
|
31
32
|
Requires-Dist: scipy
|
|
@@ -35,7 +36,7 @@ Provides-Extra: all
|
|
|
35
36
|
Requires-Dist: ipympl; extra == 'all'
|
|
36
37
|
Requires-Dist: ipython; extra == 'all'
|
|
37
38
|
Requires-Dist: ipywidgets; extra == 'all'
|
|
38
|
-
Requires-Dist: open3d
|
|
39
|
+
Requires-Dist: open3d; extra == 'all'
|
|
39
40
|
Requires-Dist: pygments; extra == 'all'
|
|
40
41
|
Requires-Dist: pytesseract; extra == 'all'
|
|
41
42
|
Requires-Dist: rosbags; extra == 'all'
|
|
@@ -64,7 +65,7 @@ Requires-Dist: ipywidgets; extra == 'jupyter'
|
|
|
64
65
|
Provides-Extra: ocr
|
|
65
66
|
Requires-Dist: pytesseract; extra == 'ocr'
|
|
66
67
|
Provides-Extra: open3d
|
|
67
|
-
Requires-Dist: open3d
|
|
68
|
+
Requires-Dist: open3d; extra == 'open3d'
|
|
68
69
|
Provides-Extra: ros
|
|
69
70
|
Requires-Dist: rosbags; extra == 'ros'
|
|
70
71
|
Requires-Dist: roslibpy; extra == 'ros'
|
|
@@ -105,6 +106,7 @@ Description-Content-Type: text/markdown
|
|
|
105
106
|
[](https://pepy.tech/projects/machinevision-toolbox-python)
|
|
106
107
|

|
|
107
108
|
[](https://codecov.io/gh/petercorke/machinevision-toolbox-python)
|
|
109
|
+
[](https://app.codacy.com/gh/petercorke/machinevision-toolbox-python/dashboard)
|
|
108
110
|
[](https://opensource.org/licenses/MIT)
|
|
109
111
|
|
|
110
112
|
### Ecosystem & Dependencies
|
{machinevision_toolbox_python-2.3.0.dist-info → machinevision_toolbox_python-2.4.1.dist-info}/RECORD
RENAMED
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
machinevisiontoolbox/BagOfWords.py,sha256=
|
|
2
|
-
machinevisiontoolbox/BundleAdjust.py,sha256=
|
|
3
|
-
machinevisiontoolbox/Camera.py,sha256=
|
|
1
|
+
machinevisiontoolbox/BagOfWords.py,sha256=dfl-9v_CJmXyf2LUQnGUQBw7QWiQSw1qe8jN3fjE_30,19808
|
|
2
|
+
machinevisiontoolbox/BundleAdjust.py,sha256=MVeHhfkbTMPXcvotVSb0zPPs15OMSxTfwQxIrUuBxe0,34236
|
|
3
|
+
machinevisiontoolbox/Camera.py,sha256=fHqCIyyF_QchRv-luZaz5nocxkcL_7c-n4rQSAh4qOk,143841
|
|
4
4
|
machinevisiontoolbox/ImageBlobs.py,sha256=TsXaJpqUN1WrPg0zHRmLQvP3wUBxcHHUBt9qDggjVnE,89447
|
|
5
5
|
machinevisiontoolbox/ImageColor.py,sha256=fueFYDNlvqSJPgcKsG5v2wBxaW7mYNa6OA-_rK-UJK0,17577
|
|
6
|
-
machinevisiontoolbox/ImageConstants.py,sha256=
|
|
7
|
-
machinevisiontoolbox/ImageCore.py,sha256=
|
|
8
|
-
machinevisiontoolbox/ImageFiducials.py,sha256=
|
|
9
|
-
machinevisiontoolbox/ImageIO.py,sha256=
|
|
6
|
+
machinevisiontoolbox/ImageConstants.py,sha256=TGzo62YR2_CFozena3ReZdTnuRHY_spQlgsMJoDa8RE,39154
|
|
7
|
+
machinevisiontoolbox/ImageCore.py,sha256=pQSJ3x-hmsTWvar0FpkGn4ZHi6fncy9d4We4fOr_ktA,143486
|
|
8
|
+
machinevisiontoolbox/ImageFiducials.py,sha256=zKSPgk97GhyGz0X-OLiUyqFtDZLyzgAyrbbETGeHnsY,27257
|
|
9
|
+
machinevisiontoolbox/ImageIO.py,sha256=BA-szxEJy6LSeq4DdBF845wmy3Nq2s_YjRko_dteWXA,27434
|
|
10
10
|
machinevisiontoolbox/ImageLineFeatures.py,sha256=Kq0rCzPER2eB9MhEBNn6hAHpGY-G_WPZd657RmuRryA,10855
|
|
11
11
|
machinevisiontoolbox/ImageMorph.py,sha256=WioUD2Jr9Ejnk7Let4Vf3iTFz5DhMkZ7l_ZBCbvgl4U,30237
|
|
12
12
|
machinevisiontoolbox/ImageMultiview.py,sha256=swzNsxX39dijPdPa-a4LFOl7T7liTcQeP7NJf5ODGQU,15605
|
|
13
|
-
machinevisiontoolbox/ImagePointFeatures.py,sha256=
|
|
13
|
+
machinevisiontoolbox/ImagePointFeatures.py,sha256=mf1GN37ZOvZRMhX25WAP9Twrymgk8yn1e7XXHkoq5-k,78807
|
|
14
14
|
machinevisiontoolbox/ImageProcessing.py,sha256=HBR6cbTlgfAdOiqXU8DPSFKZQXWTBIVufCyRaifky7g,51669
|
|
15
15
|
machinevisiontoolbox/ImageRegionFeatures.py,sha256=nZAdKFSpxmMZKwlbF13MOxBIUwXvPvDtIxNJUyp7pvg,16092
|
|
16
16
|
machinevisiontoolbox/ImageReshape.py,sha256=F8eNrJ1to6d5jrIJeT1D2RqX-7EnARrQ03UGUCvljXg,50204
|
|
17
17
|
machinevisiontoolbox/ImageSpatial.py,sha256=nzgScDprv7UQXhKcOps80gKjx4Ve6y498lCRm21sEtw,55622
|
|
18
18
|
machinevisiontoolbox/ImageTensor.py,sha256=ohNbThdsQid2AQbDIHaCoxj00tpRggFWv0TTpIHAJQk,9006
|
|
19
|
-
machinevisiontoolbox/ImageWholeFeatures.py,sha256=
|
|
20
|
-
machinevisiontoolbox/Kernel.py,sha256=
|
|
21
|
-
machinevisiontoolbox/PointCloud.py,sha256=
|
|
22
|
-
machinevisiontoolbox/Sources.py,sha256=
|
|
19
|
+
machinevisiontoolbox/ImageWholeFeatures.py,sha256=eLOZdG2OTyHUjkk6W2Wmp9mYOwqEFvfxQcFmGZgwX1s,63457
|
|
20
|
+
machinevisiontoolbox/Kernel.py,sha256=erTDpPsB38bNHvtBfijjf-9zIW57YM-Bg2ltlFCu6Mg,22607
|
|
21
|
+
machinevisiontoolbox/PointCloud.py,sha256=uwa-Y6aIV3_c6iIrfR60VkiCfPst6cSZntEXPhe2z2s,25819
|
|
22
|
+
machinevisiontoolbox/Sources.py,sha256=GaaZsAYtEWI3EYHVuP8fxIwc2_zunLiqJ7fEH86uwEg,153371
|
|
23
23
|
machinevisiontoolbox/VisualServo.py,sha256=2q_szKZo51McduLUMnN8-O6foLyLAR-o0h10-UDWKPY,60947
|
|
24
24
|
machinevisiontoolbox/__init__.py,sha256=ocn82vw6o7pvUKSfebBwPKyKTiK-jMR8FK3SEtpDFVM,3871
|
|
25
25
|
machinevisiontoolbox/_image_typing.py,sha256=FjdzZpuxEH9nBrj8gb-tkwUZDjpCNH92sQS3meemCVE,7286
|
|
@@ -27,32 +27,34 @@ machinevisiontoolbox/camera_derivatives.py,sha256=ysaP8PvgeBpFf8e37AmYQTW28SiFBK
|
|
|
27
27
|
machinevisiontoolbox/decorators.py,sha256=6wEoLFozK2RFcGb9QrLy2bAw4sjkbm_2q3PpnIS9Rtk,2623
|
|
28
28
|
machinevisiontoolbox/fiducial.py,sha256=syC7iIz95nYBTr_njo4ZzLXOyAdAIqoAZq_wRVhyUHQ,1374
|
|
29
29
|
machinevisiontoolbox/mvtb_types.py,sha256=YD2P9mDXhz75GgC7Cyeer8luBpSHckkrLZ0GDVvGOnE,728
|
|
30
|
-
machinevisiontoolbox/base/__init__.py,sha256=
|
|
31
|
-
machinevisiontoolbox/base/color.py,sha256
|
|
30
|
+
machinevisiontoolbox/base/__init__.py,sha256=RvRL9e_FMqBordxwHDqX44YGN38AD4m4fHfkEXslNK4,1666
|
|
31
|
+
machinevisiontoolbox/base/color.py,sha256=-8bjXwkgfRamNs-jZnFsbqpGKR_dN4rCrLqxrsUYjN8,59492
|
|
32
32
|
machinevisiontoolbox/base/data.py,sha256=PF1HyrYQ-EDR-0heHMG1oDxs63AtQshNWbUvN8GOKsY,6130
|
|
33
33
|
machinevisiontoolbox/base/findpeaks.py,sha256=Ag0UIw2CPVioB356Pvj-_k_wjxMODGpsW7qdkt6UvEs,11251
|
|
34
34
|
machinevisiontoolbox/base/graphics.py,sha256=R8hbf_jK3mvq_dEoATxkjcbxUJvoSMovNbrk3W4BQe8,36974
|
|
35
|
-
machinevisiontoolbox/base/imageio.py,sha256=
|
|
35
|
+
machinevisiontoolbox/base/imageio.py,sha256=uQceV4CDDhXrWMKgB4hhu3DxeJjEOKE2QJ8fatd4-MA,55592
|
|
36
36
|
machinevisiontoolbox/base/meshgrid.py,sha256=Bo2GIlk0tRT2CV5sP5I9i-mZy-6c3BPozLOuOiEVHT0,3162
|
|
37
37
|
machinevisiontoolbox/base/shapes.py,sha256=d-DmB_9iEsHyC6AT6lv2LMHvb-PMqHTXtehqMKk3aRQ,11430
|
|
38
|
-
machinevisiontoolbox/base/types.py,sha256=
|
|
38
|
+
machinevisiontoolbox/base/types.py,sha256=AkeDiJOh1nUmfhcfE-ZS_cISIPYIcSEJxzzWKkvkgTw,5687
|
|
39
39
|
machinevisiontoolbox/base/version.py,sha256=uSKKfk9fOu5XF_21Kzfh3N111U-39mobNwiRyelOqcU,976
|
|
40
40
|
machinevisiontoolbox/bin/_bintools.py,sha256=WwzyOqXEv4T-TB2GMBym4pGU2NACM5ACDCg7exGRl0I,1918
|
|
41
41
|
machinevisiontoolbox/bin/_iminteractive.py,sha256=9fh2QcuO9RFfO9uGA05MePbe6cUtlh-F19z2zbG4pLA,17063
|
|
42
42
|
machinevisiontoolbox/bin/bagtool.py,sha256=b-Ap2AynpXe0FtcydyfkXIgHDaumAkGBJgDZ6lgdZBU,12359
|
|
43
43
|
machinevisiontoolbox/bin/imtool.py,sha256=la9m9LuMnthJzXxjMRWqGY_l7rJUZS5wiVgZsw84SO4,7897
|
|
44
|
-
machinevisiontoolbox/bin/mvtbtool.py,sha256=
|
|
44
|
+
machinevisiontoolbox/bin/mvtbtool.py,sha256=7-fhz11-TIUCTPeDlpCxnpM7rONWcHRBTi80b537-nY,13871
|
|
45
45
|
machinevisiontoolbox/bin/ocrtool.py,sha256=HtkbLnjij40oy83nBtZlbJSFJ2pn7lcQAmOifvCLw0I,4719
|
|
46
46
|
machinevisiontoolbox/bin/tagtool.py,sha256=io-NCIMdMc5zIFYMa6U2ITTv2T-Q8Y0bwh_pB1qZ4IQ,8523
|
|
47
47
|
machinevisiontoolbox/blocks/__init__.py,sha256=EsdfK2WxYLSo0SA5HSmlgsivLT1kDnoH9v-RTBDnWwc,142
|
|
48
48
|
machinevisiontoolbox/blocks/camera.py,sha256=v0kLMa97bTcLkNtq8c-oGFH7DWqRbp8HTtA0X8wI13g,8627
|
|
49
49
|
machinevisiontoolbox/blocks/test_blocks.py,sha256=dsJiK3BwvNRvzK95bUbPhgbZdoWZhVWQD-yHD-YZRMw,1767
|
|
50
|
+
machinevisiontoolbox/blocks/Icons/README.md,sha256=YVIdysTzRyt7jBHCP01CIL5jjjx-i2Cf5_zV7CO6aRk,1398
|
|
50
51
|
machinevisiontoolbox/blocks/Icons/camera.png,sha256=CGcTB_llMoucN-rfnP6ZP_7AfE_92z6JnCdam-hDLgs,1642
|
|
51
52
|
machinevisiontoolbox/blocks/Icons/estpose_p.png,sha256=1XrwL4OkotGWMwKmhnar3tt8cQWUdZiO7PxXD354T-E,4320
|
|
52
53
|
machinevisiontoolbox/blocks/Icons/imageplane.png,sha256=34FYQMzkq6foxvRU8pn0KkcHxpHRvsJRJSYKfNu13Eg,3902
|
|
54
|
+
machinevisiontoolbox/blocks/Icons/make_icons.py,sha256=zsn7qPni9l4IEK6YyMCUWnUrLvh3oAd8DA-ohm4GCpE,3905
|
|
53
55
|
machinevisiontoolbox/blocks/Icons/visjac_p.png,sha256=8X023l-C9Y5DfAN8wCdWYjSjq6wp1vRzuZ85sUbwxv8,3819
|
|
54
|
-
machinevision_toolbox_python-2.
|
|
55
|
-
machinevision_toolbox_python-2.
|
|
56
|
-
machinevision_toolbox_python-2.
|
|
57
|
-
machinevision_toolbox_python-2.
|
|
58
|
-
machinevision_toolbox_python-2.
|
|
56
|
+
machinevision_toolbox_python-2.4.1.dist-info/METADATA,sha256=J3t8DBS9GeDzvSYAoABybNx_Nxps3PASmcp_Sl8fOPA,21961
|
|
57
|
+
machinevision_toolbox_python-2.4.1.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
|
|
58
|
+
machinevision_toolbox_python-2.4.1.dist-info/entry_points.txt,sha256=uEqrEt9WZHJ5SL9r5CUSKb3iwoEG_bHRAeevp1y3yvs,258
|
|
59
|
+
machinevision_toolbox_python-2.4.1.dist-info/licenses/LICENSE,sha256=niCzY_CzbIMKuUZlUkGimjrKp0vkLAtcwFmoSuSKrdw,1068
|
|
60
|
+
machinevision_toolbox_python-2.4.1.dist-info/RECORD,,
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
[console_scripts]
|
|
2
2
|
bagtool = machinevisiontoolbox.bin.bagtool:main
|
|
3
3
|
imtool = machinevisiontoolbox.bin.imtool:main
|
|
4
|
-
labeltool = machinevisiontoolbox.bin.labeltool:main
|
|
5
4
|
mvtbtool = machinevisiontoolbox.bin.mvtbtool:main
|
|
6
5
|
ocrtool = machinevisiontoolbox.bin.ocrtool:main
|
|
7
6
|
tagtool = machinevisiontoolbox.bin.tagtool:main
|
|
@@ -58,6 +58,13 @@ class BagOfWords:
|
|
|
58
58
|
of image features is assigned labels from the ``.centroids`` any with a
|
|
59
59
|
label greater that ``.nstopwords`` is a stop word and can be discarded.
|
|
60
60
|
|
|
61
|
+
.. note:: Removing stop words can leave a remaining word that never
|
|
62
|
+
occurs in any image, giving it an inverse document frequency (idf)
|
|
63
|
+
of ``inf`` (``log(N / 0)``). This is harmless -- every place idf is
|
|
64
|
+
used to compute a word-frequency vector, the corresponding word
|
|
65
|
+
count is also always zero there, so the ``0 * inf`` result is
|
|
66
|
+
``nan`` and gets replaced with 0 before the vector is returned.
|
|
67
|
+
|
|
61
68
|
:reference:
|
|
62
69
|
- Video Google: a text retrieval approach to object matching in videos
|
|
63
70
|
J.Sivic and A.Zisserman,
|
|
@@ -139,7 +146,12 @@ class BagOfWords:
|
|
|
139
146
|
# total number of occurrences of word i
|
|
140
147
|
# multiple occurrences in the one image count only as one
|
|
141
148
|
ni = (W > 0).sum(axis=1)
|
|
142
|
-
|
|
149
|
+
# a word that never occurs in any image (ni=0, possible after
|
|
150
|
+
# stopword removal) gives idf=inf here; harmless since nid is
|
|
151
|
+
# always 0 at that same position below, so 0*inf->nan, already
|
|
152
|
+
# suppressed by the invalid="ignore" there.
|
|
153
|
+
with np.errstate(divide="ignore"):
|
|
154
|
+
idf = np.log(N / ni)
|
|
143
155
|
|
|
144
156
|
M = []
|
|
145
157
|
|