Java OpenCV相同的坐标表示不同的点?
我试图从红色圆圈的内部获取颜色,并更改位于左上角的大圆圈的颜色,如图所示。如屏幕截图所示,大圆圈的颜色与红色圆圈的颜色不一样,它的颜色比红色圆圈稍微偏左一点。我给了同样的药片,怎么修复 这是我的密码Java OpenCV相同的坐标表示不同的点?,java,android,opencv,image-processing,colors,Java,Android,Opencv,Image Processing,Colors,我试图从红色圆圈的内部获取颜色,并更改位于左上角的大圆圈的颜色,如图所示。如屏幕截图所示,大圆圈的颜色与红色圆圈的颜色不一样,它的颜色比红色圆圈稍微偏左一点。我给了同样的药片,怎么修复 这是我的密码 public class MainActivity extends AppCompatActivity implements CameraBridgeViewBase.CvCameraViewListener2, View.OnTouchListener { private CameraB
public class MainActivity extends AppCompatActivity implements CameraBridgeViewBase.CvCameraViewListener2, View.OnTouchListener {
private CameraBridgeViewBase cameraManager;
private BaseLoaderCallback callBack = new BaseLoaderCallback(this) {
@Override
public void onManagerConnected(int status) {
cameraManager.enableView();
}
};
Mat mRgba;
double[] renk;
int r,g,b;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if(!OpenCVLoader.initDebug()){
OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_2_0, this, callBack);
}
cameraManager = (CameraBridgeViewBase)findViewById(R.id.kamera);
cameraManager.setVisibility(View.VISIBLE);
cameraManager.setCvCameraViewListener(this);
cameraManager.setCameraIndex(0);
}
@Override
public void onCameraViewStarted(int width, int height) {
mRgba = new Mat(width, height, CvType.CV_8UC4);
}
@Override
public void onCameraViewStopped() {
}
@Override
public Mat onCameraFrame(CameraBridgeViewBase.CvCameraViewFrame inputFrame) {
mRgba = inputFrame.rgba();
renk = mRgba.get(mRgba.width()/2, (mRgba.height()/10)*8);
Imgproc.circle(mRgba, new Point(mRgba.width()/2, (mRgba.height()/10)*8), 10, new Scalar(255,0,0));
r = (int) renk[0];
g = (int) renk[1];
b = (int) renk[2];
Imgproc.circle(mRgba, new Point(0, 0), 100, new Scalar(r,g,b), 100);
return mRgba;
}
@Override
public boolean onTouch(View v, MotionEvent event) {
return false;
}
}
(代表OP发布)
我猜到了。点(x,y)=列,行。提供输入图像。您的代码看起来正常,颜色不能来自圆圈的左侧。我已在两个不同的设备上尝试过,但结果相同。还有什么会导致这种情况@请提供您正在谈论的图像,而不仅仅是手机屏幕截图。所以你想告诉我,你在两台不同的设备上有相同的颜色,两台不同的相机有两张不同的图片?结果以前是一样的。它在其他任何地方挑选颜色@小猪好的,再读一遍主题@Piege