Python 3.x GPhoto2-直接从相机获取焦距和传感器大小

Python 3.x GPhoto2-直接从相机获取焦距和传感器大小,python-3.x,libgphoto2,Python 3.x,Libgphoto2,是否可以使用GPhoto2直接从相机获取焦距和/或传感器尺寸 我试图在camera对象和文件信息中查找它,但没有结果。 我还知道我可以使用config获取/设置一些参数(速度、光圈等)。 焦距不是其中之一,原因很明显,但我想知道相机是否知道它的当前值。同样的传感器尺寸,当然它是不可配置的,但我认为相机内部会知道它 为什么我需要这个?我需要知道以像素为单位的焦距,并打算根据焦距、传感器大小和图像分辨率计算焦距。相机配置可以包括只读参数,其中可能包括某些相机的焦距。(整个配置非常依赖于摄像头。) 我

是否可以使用GPhoto2直接从相机获取焦距和/或传感器尺寸

我试图在camera对象和文件信息中查找它,但没有结果。 我还知道我可以使用config获取/设置一些参数(速度、光圈等)。 焦距不是其中之一,原因很明显,但我想知道相机是否知道它的当前值。同样的传感器尺寸,当然它是不可配置的,但我认为相机内部会知道它


为什么我需要这个?我需要知道以像素为单位的焦距,并打算根据焦距、传感器大小和图像分辨率计算焦距。

相机配置可以包括只读参数,其中可能包括某些相机的焦距。(整个配置非常依赖于摄像头。)


我建议的唯一解决方案是拍摄一张照片,从相机上复制(甚至只复制前几个千字节),然后从照片的Exif数据中获取所需信息。

你可能是这个意思吗

$ gphoto2 --get-config focusinfo
Label: Focus Info                                                              
Readonly: 0
Type: TEXT
Current: eosversion=4,size=5184x3456,size2=5184x3456,points={{-1477,0,186,139},{-886,418,186,139},{-886,-418,186,139},{0,787,127,196},{0,0,231,238},{0,-787,127,196},{886,418,186,139},{886,-418,186,139},{1477,0,186,139}},select={},unknown={ff010000ffff}
END

在我的T3i上,
size
产生传感器分辨率:5184x3456。您可以使用awk/sed/perl/等解析这个字符串。。只是为了获得分辨率。

我们已经查看了exif,不幸的是它没有这些信息,这就是为什么我尝试使用gphoto获取它。我已经打印了整个配置,而这些信息不在那里-这意味着它不在那里,对吗?是的,如果它不在配置中,那么它就不在那里。我很惊讶它不在照片的Exif中,但这也取决于相机。我的佳能单反绝对有焦距和传感器分辨率。是的,传感器分辨率,但不是物理传感器大小。这很不幸,但感谢您的快速回复。