谁知道有没有办法知道光的容量?
我知道其中一种方法是使用环境光传感器,但它不鼓励,最终应用程序不允许在市场上
我发现问题非常接近我需要的问题
detecting if iPhone is in a dark room
那个人解释说我可以使用ImageIO框架,读取视频源的每一帧进来的元数据
- (voID)captureOutput:(AVCaptureOutput *)captureOutput dIDOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer fromConnection:(AVCaptureConnection *)connection { CFDictionaryRef MetadataDict = CMcopyDictionaryOfAttachments(NulL,sampleBuffer,kCMAttachmentMode_ShouldPropagate); NSDictionary *Metadata = [[NSMutableDictionary alloc] initWithDictionary:(__brIDge NSDictionary*)MetadataDict]; CFRelease(MetadataDict); NSDictionary *exifMetadata = [[Metadata objectForKey:(Nsstring *)kCGImagePropertyExifDictionary] mutablecopy]; float brightnessValue = [[exifMetadata objectForKey:(Nsstring *)kCGImagePropertyExifBrightnessValue] floatValue];}
但我是iOS的新手,不知道如何在Swift中转换这段代码
提前致谢!
解决方法 以下代码实现在Swift 3.x中可以使用相机的EXIF数据获得近似光度值(以单位勒克斯为单位).请参考以下链接. Using a camera as a lux meter
这里AVFoundation中captureOutput方法的sampleBuffer值用于从相机帧中提取EXIF数据.
func captureOutput(_ captureOutput: AVCaptureOutput!,dIDOutputSampleBuffer sampleBuffer: CMSampleBuffer!,from connection: AVCaptureConnection!) { //RetrIEving EXIF data of camara frame buffer let rawMetadata = CMcopyDictionaryOfAttachments(nil,CMAttachmentMode(kCMAttachmentMode_ShouldPropagate)) let Metadata = CFDictionaryCreateMutablecopy(nil,rawMetadata) as NSMutableDictionary let exifData = Metadata.value(forKey: "{Exif}") as? NSMutableDictionary let FNumber : Double = exifData?["FNumber"] as! Double let ExposureTime : Double = exifData?["ExposureTime"] as! Double let ISOSpeedratingsArray = exifData!["ISOSpeedratings"] as? NSArray let ISOSpeedratings : Double = ISOSpeedratingsArray![0] as! Double let CalibrationConstant : Double = 50 //Calculating the luminosity let luminosity : Double = (CalibrationConstant * FNumber * FNumber ) / ( ExposureTime * ISOSpeedratings ) print(luminosity)}
请注意,CalibrationConstant的值可以根据应用进行校准,如参考文献中所述.
总结以上是内存溢出为你收集整理的ios – 如何从AVFoundation获得光照值?全部内容,希望文章能够帮你解决ios – 如何从AVFoundation获得光照值?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)