我正在Mac上创建对象检测程序。 我想在手动曝光模式下使用iSight来提高检测质量。
我试过iGlasses& QTKit Capture可以做到这一点并且有效,但程序运行非常缓慢且不稳定。 所以我想尝试其他解决方案。
在PhotoBooth.app中,iSight似乎以固定曝光模式运行,因此可能有办法实现。 我阅读了QTKit Capture文档和OpenCV文档,但我找不到答案。
如果您有任何想法,请告诉我。 谢谢。
答案 0 :(得分:1)
QTKit Capture虽然使用起来很简单,但却无法设置手动相机参数,如增益,亮度,焦距等。如果您使用的是Firewire相机,我建议您查看{{3}如果您使用的是IIDC Firewire相机(如旧的外部iSight),它可让您控制所有这些值以及更多值。我使用这个库来从机器人平台上的CCD摄像头进行视频捕获和控制。
但是,我猜你对内部iSight摄像头感兴趣,这是USB。 Wil Shipley在他的帖子libdc1394中简要提到了对内部USB iSights参数的控制,但他提出的大部分碳代码都控制着IIDC Firewire相机中的这些值。
不幸的是,根据Brad Ford的QuickTime邮件列表中的"Frozen in Carbonite",听起来你无法通过暴露的界面以编程方式控制内置iSights上的饱和度和清晰度。他推测iGlasses是用软件对图像进行后处理的,这是你可以用Core Image过滤器做的事情。
答案 1 :(得分:1)
我终于设法从我的Cocoa App锁定了我的iSight的autoexposure / autowhitebalance。
查看www.paranoid-media.de/blog了解更多信息。
答案 2 :(得分:0)
嗯,
我试过&这些天搜索了很多,但我找不到一个好主意。 我认为OpenCV + cocoa + iGlasses是最快的但仍然不稳定。
如果您有好主意,请回复。 谢谢。
答案 3 :(得分:0)
phoboslab的UVC Camera Control for Mac OSX使用基本USB命令和记录的USB接口来访问网络摄像头控件。上面列出的paranoid-media.de/blog链接到PhobosLab,并为iSight的该方法提供了一些额外的调整。 (这些调整现在也可以在phoboslab的评论中找到。