我想仔細調整iPhone/iPod touch相機的曝光。我寧願拍攝一系列減少曝光時間的照片以獲得一系列圖像(用於HDR重建)。這可能嗎?iOS相機可以手動調整曝光時間嗎?
如果不是,下一個最好的事情是什麼?看起來你可以在圖像中爲自動曝光設置一個興趣點。也許我可以搜索圖像的黑暗/光照區域,然後使用此來調整曝光,但這看起來像是一個非常間接的解決方案,也容易出錯。如果有人嘗試過替代方案,這樣的答案也是可取的。
我想仔細調整iPhone/iPod touch相機的曝光。我寧願拍攝一系列減少曝光時間的照片以獲得一系列圖像(用於HDR重建)。這可能嗎?iOS相機可以手動調整曝光時間嗎?
如果不是,下一個最好的事情是什麼?看起來你可以在圖像中爲自動曝光設置一個興趣點。也許我可以搜索圖像的黑暗/光照區域,然後使用此來調整曝光,但這看起來像是一個非常間接的解決方案,也容易出錯。如果有人嘗試過替代方案,這樣的答案也是可取的。
既然你將不得不降低相機的快門速度,這不幸的是不會出現成爲可能,更重要的是,對HIG:
更改iPhone的外部硬件的行爲iPhone開發者計劃許可協議違反 。應用程序必須 堅持iPhone人機界面指南作爲 iPhone開發計劃許可協議第3.3.7節
如果它可以通過程序來完成,而不是與硬件,你可能有機會,但隨後其只是一個形象,而不是一個真正的長時間曝光的圖片上的效果。
有一些模擬獲得批准的低速快門應用程序,如Slow Shutter或Magic Shutter。
相關文章:New iPhone Camera App 「Magic Shutter」 Hits The App Store。
我也不太清楚,但你應該嘗試使用AVFoundation類構建的相機應用,繼蘋果的示例代碼: AVCam Sample Code
,然後嘗試利用類的exposureMode屬性:
我試圖爲我的運動激活的相機應用程序(Pocket Sentry)做到這一點,我發現它不可能做到這一點,並獲得應用程序商店的批准。
我一直在努力做到這一點。我認爲只有通過使用興趣點的財產纔有可能。我正在檢測黑暗和亮點,然後相應地調整點。
請參考:Detecting bright/dark points on iPhone screen
有誰知道一個更好的方式來做到這一點?
如iOS的給出由幀持續時間的控制 MinFrameDuration MaxFrameDuration
因爲曝光時間變化基於FRAM速率和幀持續時間 通過設置最低和最高幀速率的特定值 你將被鎖定FRAM率。 這會影響你的曝光時間。 這也是控制的非常間接的方式,可能是它可以幫助你的情況
一些例子是這樣的: http://developer.xamarin.com/guides/ios/platform_features/intro_to_manual_camera_controls/
看一看:
if (conn.isVideoMinFrameDurationSupported)
conn.videoMinFrameDuration = CMTimeMake(1, CAPTURE_FRAMES_PER_SECOND);
if (conn.isVideoMaxFrameDurationSupported)
conn.videoMaxFrameDuration = CMTimeMake(1, CAPTURE_FRAMES_PER_SECOND);
這因爲iOS 8的支持在AVCaptureExposureModeCustom和CaptureDevice.LockExposure ...
如果有人有設置曝光時間的方法,無論蘋果公司的指導方針如何,我都會把這個打開到最後。 – gonzojive 2011-09-25 10:49:12
至少,您可以在iOS 6中使用私有API執行此操作。希望他們會在下一個版本中公開。查看我的詳細答案:http://www.stackoverflow.com/a/12939981/83853 – 2012-10-17 17:39:43