Skip to content

Releases: multi-template-matching/MultiTemplateMatching-Python

Version 2.0.0

04 Jun 17:05
Compare
Choose a tag to compare

Major release, dropping the dependency on pandas.
The list of hit returned by matchTemplates (and consumed by other functions) is directly a list.

Also added extensive type hints to functions

Version 1.6.6

31 Aug 08:23
Compare
Choose a tag to compare

Changed licence to MIT for easier integration with other projects

Version 1.6.5 - Handle 0-width/height images

12 Jun 14:39
Compare
Choose a tag to compare

Minor version that throws a more explicit error message when providing 0-width or height image or template.
Also added pip install matplotlib to tutorial notebooks since not an dependency of MTM.

Version 1.6.4

03 Mar 10:21
3d8a105
Compare
Choose a tag to compare

Provide faster search with mulitple templates by parallelizing the search -> PR by @bartleboeuf (thanks !)

Version 1.6.3 - Use latest OpenCV

24 Nov 12:02
Compare
Choose a tag to compare

Update internal NMS code to work with latest OpenCV, and force opencv version to min 4.5.4,
Fix #14

Version 1.6.2.post1 - Fix OpenCV dependency

24 Nov 11:42
Compare
Choose a tag to compare

The version fixes issue with the latest version of opencv (4.5.4, maybe before)), for which cv2.NMSBoxes return an array of different shape.
Just by limiting the version of OpenCV to max 4.3.0.
Next release of MTM will be modified to use the latest version of OpenCV.

1.6.2 - Check templates sizes

05 Oct 15:37
Compare
Choose a tag to compare

As suggested in issue #11, the size of the template is checked before any computation to make sure they fit in the search region or image.

Also updated requirements and packaging (pyproject.toml)

Add support for mask with template

20 Aug 09:25
aa046f0
Compare
Choose a tag to compare

The comparison of the pixel values can be limited to a fraction of the template by providing an associated mask image, which should have the same dimension than the template.
To do so the tuple for a given template should be
("label", template_array, mask_array)

using a mask is only possible with method 0/TM_SQ_DIFF (not compatible with the Non-Maxima suppression though) and 3/TM_CCORR_NORMED

using a mask is optional (and not always beneficial)
the previous format
("label", template_array) is still acceptable and within the list of templates, some can have a mask while other not.

See new tutorial with mask.

Fix issue when no detections

04 Aug 10:06
Compare
Choose a tag to compare

See release note for 1.5.3.post2

Fix issue when no detections

04 Aug 09:45
Compare
Choose a tag to compare
  • Now findMatches return an empty dataFrame with proper column names if no object is found (prevent an issue with NMS then)
  • better handle the different template matching method (method 0/SQDIFF is supported by some functions, but not matchTemplates)