我是c ++和Opencv的新手。 我单击鼠标左键时试图检测鼠标坐标,如果这些坐标位于图像的某个区域内,则使用当前鼠标坐标作为左上顶点绘制一个矩形。
以下是实施:
void CallBackFunc(int event, int x, int y, int flags, void * userdata)
{
if(event == EVENT_LBUTTONDOWN || event == EVENT_LBUTTONUP)
{
mouseX=x;
mouseY = y;
`
if(( mouseX >= 0 && mouseX <= 130) && ( mouseY >= 22 && mouseY <=301))
{
rectangle(img,Point(mouseX, mouseY),Point(mouseX+30, mouseY+ 40),Scalar(0,0,0),1,8);
}
}
它将存储坐标,但它似乎永远不会执行内部if语句。