Konflikt zwischen Numpy und OpenCV2 Datentypen beim Aufruf von OpenCV Funktionen

8

Ich habe ein großes Problem bei der Verwendung der OpenCV 2 Python API. Es gibt keine separaten OpenCV-Matrix-Typen mehr. Jede Matrix ist eigentlich eine numpige Matrix. So weit, ist es gut. Das Problem tritt auf, wenn OpenCV-Funktionen auf diesen Matrizen aufgerufen werden, die einen bestimmten Datentyp benötigen. OpenCV scheint Probleme beim Abgleich von Datentypen mit OpenCV-Datentypen zu haben. Zum Beispiel scheinen numpige Matrizen mit np.uint8 nicht als cv_8uc1 erkannt zu werden.

Hier ist ein konkretes Beispiel, wo es schief geht, wenn man versucht, eine Distanztransformation an einem Schwellenwertbild durchzuführen:

%Vor%

Dies erzeugt den folgenden Fehler:

%Vor%

thr.dtype ist np.uint8 , daher weiß ich nicht, warum dieser Fehler auftritt. Wird OpenCV 2 nicht von den numpigen Datentypen auf die entsprechenden OpenCV-Datentypen abgebildet?

Ich wäre sehr froh, eine Lösung für dieses Problem zu finden.

    
Koffiman 03.01.2014, 19:38
quelle

1 Antwort

1

Konnte nicht reproduzieren ...

%Vor%

Sie können verwendete Datentypen überprüfen.

%Vor%     
NikoNyrh 01.10.2015, 13:03
quelle

Tags und Links