No SURF features detected in uint16 images.

3 visualizaciones (últimos 30 días)
Nancy Semwal
Nancy Semwal el 29 de Oct. de 2018
Respondida: Michael Jones el 19 de Mzo. de 2024
I am using SURF features for image registration. I have images of type uint16.
pts1 = detectSURFFeatures(image)
When I used the above function on uint16 images, the function returned 0 SURF points. As a workaround, I used to convert the images to uint8, after which the function was returning a good amount of detected SURF points. Thus, the function worked on uint8 images, but not on uint16.
Note, that the function doesn't show any error. It executes successfully, but the SURFPoints object returned has 0 SURFPoints.
Why does this happen? The documentation of the above function says that the image can be double, uint8, int8, uint16, int16 and logical. Then why is the function not working on the uint16 images I am using?
I experimented by converting the image to double data type. It didn't work. It worked only when I convert the image to uint8.
Sorry I cannot share the images since they are confidential data, but did anybody here faced similar issues?
I could have continued with the conversion to uint8, but that is posing some other problem, hence I want to know the solution to the fundamental issue.

Respuestas (2)

antonio redavid
antonio redavid el 28 de Mzo. de 2019
I have the same problem. Does anyone have suggestions?

Michael Jones
Michael Jones el 19 de Mzo. de 2024
I'm having the same issue, also for SIFT features too, anyone?

Categorías

Más información sobre Geometric Transformation and Image Registration en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by