通过我的代码,我想知道图像的尺寸,以英寸为单位。通过OpenCV,我可以使用以下代码找到图像像素数组的高度和宽度:
#include "stdafx.h"
#include <cv.h>
#include <cxcore.h>
#include <highgui.h>
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
IplImage *img = cvLoadImage("photo.jpg");
if (!img) {
printf("Error: Couldn't open the image file.\n");
return 1;
}
cout<<"Number of pixels in width = "<<img->width<<endl<<"Number of pixels in height = "<<img->height;
return(0);
}
请帮助我找到以英寸为单位的图像尺寸。 提前谢谢......
答案 0 :(得分:1)
您需要知道显示器的DPI。为此,您需要查看平台的SDK(Windows / Linux / Mac)以了解如何检索此信息,因为OpenCV不提供此功能。
Image Size Calculator是执行此计算的JavaScript计算器。检查代码页面的源代码。
答案 1 :(得分:0)
您必须定义px / inch比率。你会得到价值。
如果您想在显示器上以英寸为单位调整图像大小,请调整显示器分辨率和大小,然后您将获得这些比率。
答案 2 :(得分:0)
你做不到。如果我拍一张月亮照片,卫星直径可能是127像素。那应该多少英寸?月亮照在那张照片中的一棵树上,树的宽度为341像素。这棵树多少英寸?真??