boost
BOOST - Jämför bilder med OpevCV
Sök…
Introduktion
Denna dokumentation förklarar hur en extern bild kan testas och jämföras med utgångsbilden från OpenCV. Till exempel, för att jämföra två suddiga bilder och testa om de båda är samma, suddar vi ut en originalbild i en extern programvara (jag använde WiT Image Processing-programvara) eller laddar bara ner någon suddig bild online-output1. Skapa ett Win32 OpenCV-projekt i Visual Studio. Läs originalbilden som en ingång till OpenCV. Oskärpa originalbilden i OpenCV och jämför med output1.
OpenCV-kod för att läsa bilder och jämföra
#include <opencv2 / opencv.hpp> #include
med namnutrymme cv; med namnutrymme std;
int main (int argc, char ** argv) {Matbild; image = imread ("C: \ Användare \ Utveckling \ Dokument \ Visual Studio 2013 \ Projects \ ImageIn.bmp", CV_LOAD_IMAGE_GRAYSCALE); // Läs filen
if (!image.data) // Check for invalid input
{
cout << "Could not open or find the image" << std::endl;
return -1;
}
Mat witout = imread("C:\\Users\\Development\\Documents\\Visual Studio 2013\\Projects\\ImageWitOut.bmp", CV_LOAD_IMAGE_GRAYSCALE);;
Mat cvout = Mat(image.size(), image.type(), Scalar(255));
imshow("witout", witout);
imshow("cvout", cvout);
Mat diff = (witout == cvout);
namedWindow("Difference", WINDOW_AUTOSIZE);// Create a window for display.
imshow("Difference", diff); // Show our image inside it.
waitKey(0); // Wait for a keystroke in the window
return 0;
}