Ich würde gerne wissen, ob es eine einfache Möglichkeit gibt, eine boolesche "Nicht" -Operation auf einem cv :: Mat zu machen. Dies funktioniert nicht:Boolean Nicht in OpenCV 3.1
cv::Mat mat = cv::Mat::ones(3,3, CV_8U);
cv::Mat mat_not = !mat;
Gibt es einen effektiven oder einfachen Weg, dies zu tun? Sollte ich etwas wie das verwenden:
cv::Mat mat_not = mat < cv::Mat::ones(3,3,CV_8U);
Vielen Dank!
EDIT: Ich habe den "nicht" Operator zwischen MATLAB und C++ verwechselt (da ich die erste in die andere übersetze). Dies funktioniert gut:
cv::Mat map2 = ~map1;
boolean nicht ist '~' – Miki
Oh! Ja, das ist offensichtlich! Danke, dass du darauf hingewiesen hast. Übersetzen Matlab-Code in C++, es hat mich verwirrt! – Cedric