I am trying to create an ROI above the face detected to place a hat like shown in the image, click here to see the image:
I have made sure that the ROI created is withing the bounds of the image. It looks like this:
if (0<=face.x && 0<=face.x-face.width0.08<=image.cols && 0<=face.x+face.width+face.width0.08<=image.cols && 0<=face.y && 0<=face.y-face.height0.28<=image.rows) { Mat ROI_hat = image(Rect(abs(face.x-face.width0.08),abs(face.y-face.height0.28),abs(face.x+face.width+face.width0.08),abs(face.y))); rectangle(image,Point(abs(face.x-face.width0.08),abs(face.y-face.height0.28)),Point(abs(face.x+face.width+face.width*0.08),abs(face.y)),Scalar(255, 0, 0), 1, 4); cout<<"Within the bounds of Image"<<endl; }="" else{="" cout<<"="" out="" of="" bounds="" of="" image="" "<<endl;="" }<="" p="">
There are no negative values and for every frame it says ROI is withing the bounds. But I still get assertion error: OpenCV Error: Assertion failed (0 <= roi.x && 0 <= roi.width && roi.x + roi.width <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows) in Mat, file /home/user/OpenCV_Installed/opencv-3.2.0/modules/core/src/matrix.cpp, line 522 terminate called after throwing an instance of 'cv::Exception' what(): /home/user/OpenCV_Installed/opencv-3.2.0/modules/core/src/matrix.cpp:522: error: (-215) 0 <= roi.x && 0 <= roi.width && roi.x + roi.width <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows in function Mat Aborted (core dumped)
Can someone please help me ??