Ios 如何根据距离指定图像大小

Ios 如何根据距离指定图像大小,ios,objective-c,image-processing,augmented-reality,core-motion,Ios,Objective C,Image Processing,Augmented Reality,Core Motion,我正在根据预定义的大小指定图像大小,例如距离和图像宽度和高度。我参考了以下链接: 以厘米为单位的距离=152.4,ipadMini相机焦距为3.3毫米=0.33厘米 但是,如果我这样做,它会减少图像大小,而不是接近或接近 基于纵横比的图像大小: CGFloat widthRatio = self.view.frame.size.width / enteredRoomSize.width; CGFloat heightRatio = self.view.frame.size.height / e

我正在根据预定义的大小指定图像大小,例如距离和图像宽度和高度。我参考了以下链接:

以厘米为单位的距离=152.4,ipadMini相机焦距为3.3毫米=0.33厘米

但是,如果我这样做,它会减少图像大小,而不是接近或接近

基于纵横比的图像大小:

CGFloat widthRatio = self.view.frame.size.width / enteredRoomSize.width;
 CGFloat heightRatio = self.view.frame.size.height / enteredRoomSize.height;

  CGSize imageSize = CGSizeMake(350 * widthRatio, 199 * widthRatio);

 mmageView=[[UIImageView alloc]init];

 CGRect frame = mmageView.frame; frame.size = imageSize; mmageView.frame = frame;

这是基础数学。公式是:

object_distance = (focal * real_object_height)/object_height;
因此,你应该:

height_of_frame = (focal * measured_object_height_in_mm / 1000.0))/obj_distance;

width_of_frame = (focal  * measured_object_width_in_mm / 1000.0))/obj_distance;

此外,帧的高度单位将与通常的焦点像素相同,obj距离应以米为单位,而不是以厘米为单位。

什么是真实的对象高度。我将图像叠加在摄像机视图上,用于增强现实应用。图像仅覆盖在摄影机视图上,它不在摄影机前面我将图像覆盖在摄影机视图上,而不在摄影机视图前面。那么,我需要在叠加图像中使用测量的对象高度单位mm吗?然后根据距离和焦距,我需要用高度和宽度覆盖图像。我编辑了我的答案以匹配您的符号,但您需要澄清您的问题。。。但是,如果我这样做的话,你是什么意思?它会缩小图像大小,而不是缩小或接近?
height_of_frame = (focal * measured_object_height_in_mm / 1000.0))/obj_distance;

width_of_frame = (focal  * measured_object_width_in_mm / 1000.0))/obj_distance;