我正在使用AVCapture基础通过委托回叫来检索图像(来自iphone 4前置摄像头)。我已将BGRA指定为具有以下格式的格式:
self.theOutput.videoSettings = [NSDictionary dictionaryWithObject:[NSNumber numberWithInt:kCVPixelFormatType_32BGRA] forKey:(id)kCVPixelBufferPixelFormatTypeKey];
其中self.output的类型为AVCaptureVideoDataOutput。
我可以正确预览图像。
我一直试图找到一种简单的方法来测试单个像素RGB以试图更好地理解,例如在相机上拿着蓝卡,但数字只在80-110之间波动,而不是我预期的0 ,0,255是什么给出的?
当我在相机上拿着一张白卡时,我估计每个RGB会有255张,但是我接近120张。它似乎在白色上将所有数字折扣50%。任何原因?但是当我让直射光照射到相机上时,每个RGB元素都会得到255。
我觉得我在这里缺少一些基本的理解。
答案 0 :(得分:2)
我希望每个RGB都有255个,但我接近120个。
相机会尝试自动调整曝光以获得最佳照片。在这种情况下,可能假设图像的平均亮度应该在128左右,并且它会调整以获得该值。相机无法判断您前面的纸张是白色,黑色还是中灰色,因此它假定它必须是中灰色。