Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menggunakan Wilayah Minat (ROI) dalam OpenCV menggunakan C++?
Untuk mengasingkan bahagian tertentu daripada imej, kita mesti mencari kawasan itu dahulu. kemudian kita Kawasan ini mesti disalin dari imej utama ke matriks lain. Beginilah cara ROI berfungsi OpenCV berfungsi.
Dalam contoh ini, dua matriks diisytiharkan pada permulaan. Selepas itu, imej bernama 'image_name.jpg' dimuatkan ke dalam matriks 'image1'. Baris seterusnya 'image2=image1 (Rect(100, 100, 120, 120));' memerlukan perhatian khusus. Baris kod ini memotong kawasan yang ditentukan bagi imej dan menyimpannya dalam matriks 'imej2'.
Ilustrasi tentang perkara yang kami lakukan menggunakan kod 'Rect(100,100,120,120)' Bentuk asas baris kod ini ialah 'Rect(x, y,x1,y1)'. Di sini, x dan y mewakili titik permulaan segi empat tepat, dan x1 dan y1 mewakili titik akhir segi empat tepat itu. Dengan menukar nilai ini, kita boleh menukar saiz segi empat tepat.
Program berikut menunjukkan cara Wilayah Minat berfungsi dalam OpenCV:
#include #include #include using namespace std; using namespace cv; int main() { Mat image1; //Declaring a matrix named 'image1'// Mat image2; //Declaring a matrix named 'image2'// image1 = imread("RGB.png"); //Loading an image name 'image_name.png into image1 matrix// image2 = image1(Rect(100, 100, 120, 120)); //imposing a rectangle on image1// namedWindow("Image_Window1"); //Declaring an window to show actual image// namedWindow("Image_Window2"); //Declaring an window to show ROI// imshow("Image_Window1", image1); //Showing actual image// imshow("Image_Window2", image2); waitKey(0); return 0; }
Atas ialah kandungan terperinci Bagaimana untuk menggunakan Wilayah Minat (ROI) dalam OpenCV menggunakan C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!