minMaxLoc method from OpenCV300 is returning different values on different machines(Windwos).
I am using minMaxLoc method to locate an image in another one. When I run a test on my machine Windows 10 or 7(virtual machine) I have some results. And when a colleague of mine runs that test (same input(source image is a full white image and imageToLocate is a yellow one)) he has a different result more exactly different coordinates for the second image.
We switched the dlls and with mine dll he still had his results and with him dll on my machine, I had my results. Is something and runtime no at compile.
matchTemplate(sourceImage, imageToLocate, resultImage, CV_TM_SQDIFF);
minMaxLoc(resultImage, &minval, &maxval, &minloc, &maxloc);
pointX = minloc.x;
pointY = minloc.y;
On my machine I have X=0,Y=45 and the other machine I have X=0,Y=49 OR another case X=717,Y=40 and the other machine X=0, Y=14.
Do you know guys which can be the reason here, Is this a normal behavior? I don't know exactly the difference between my machine and his machine.
Thank you.
Can you compare values found :
in virtual machine offen opencl is not available.
minLoc is a Point I cannot do like you said and can you explain what I should see with this line?
On my machine, the resulting image with that size is a white image. But on the other machine(It has OpenCL available) I cannot apply what you gave me because the minLoc is 0,49 and you want to do minLoc - Point(5,5). Do you have any other suggestions? Thank you.
cout << minloc<<" "<<maxloc<<"\n"; cout="" <<="" resultimage(rect(minloc="" -="" point(min(5,minloc.x),="" min(5,minloc.y)),="" size(10,="" 10)));<="" p="">
check min max :