Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 摄像头人脸检测坐标到屏幕坐标_Android_Android Camera_Coordinates - Fatal编程技术网

Android 摄像头人脸检测坐标到屏幕坐标

Android 摄像头人脸检测坐标到屏幕坐标,android,android-camera,coordinates,Android,Android Camera,Coordinates,我最近开始玩Android的摄像头api。我正在使用人脸检测,它是callbacksetFaceDetectionListener。我无法理解如何转换面[0].rect.centerX()和面[0]。rect.centerY()到我可以在屏幕上使用的东西,比如围绕以该点为中心的面移动图像 有谁能帮助我理解如何从摄像机提供的坐标系转换为我可以用来设置活动元素的东西。使用此代码(假设您有一个宽度和高度整数变量): …并获取宽度和高度: public void onWindowFocusChanged

我最近开始玩Android的摄像头api。我正在使用人脸检测,它是callback
setFaceDetectionListener
。我无法理解如何转换
面[0].rect.centerX()
面[0]。rect.centerY()
到我可以在屏幕上使用的东西,比如围绕以该点为中心的面移动图像

有谁能帮助我理解如何从摄像机提供的坐标系转换为我可以用来设置活动元素的东西。

使用此代码(假设您有一个宽度和高度整数变量):

…并获取宽度和高度:

public void onWindowFocusChanged(boolean hasFocus){
    width=image.getWidth();
    height=image.getHeight();
}
使用此代码(假设您有一个宽度和高度整数变量):

…并获取宽度和高度:

public void onWindowFocusChanged(boolean hasFocus){
    width=image.getWidth();
    height=image.getHeight();
}

(-1000,-1000)表示相机视场的左上角,(10001000)表示视场的右下角

因此,要输入到屏幕坐标(伪代码):

(-1000,-1000)表示相机视场的左上角,(10001000)表示视场的右下角

因此,要输入到屏幕坐标(伪代码):

screenX = (coord.x +1000) * screen.width / 2000
screenY = (coord.y +1000) * screen.height / 2000