我正在使用 ios CGImageSourceCopyPropertiesAtIndex 为 ios 上的图像提取大量元数据。但我无法提取所有元数据,如 Mac Preview 应用程序或 exiftool 命令中显示的元数据。
我主要是缺少“图片样式”和“佳能”信息。
我是如何读取元数据的:
NSURL *imageFileURL = [NSURL fileURLWithPath:filePath];
CGImageSourceRef imageSource = CGImageSourceCreateWithURL((CFURLRef)CFBridgingRetain(imageFileURL), NULL);
CFDictionaryRef props = CGImageSourceCopyPropertiesAtIndex(imageSource, 0, NULL);
NSLog(@"%@", props);
谁有提示?
这是使用预览的信息
这是来自 NSLog 的信息:
2013-04-02 09:50:06.885 i2[67169:1f0f] {
ColorModel = RGB;
DPIHeight = 72;
DPIWidth = 72;
Depth = 8;
Orientation = 1;
PixelHeight = 1728;
PixelWidth = 2592;
"{Exif}" = {
ApertureValue = "5.375";
BodySerialNumber = 1280809746;
ColorSpace = 1;
ComponentsConfiguration = (
1,
2,
3,
0
);
CustomRendered = 0;
DateTimeDigitized = "2012:12:24 12:58:46";
DateTimeOriginal = "2012:12:24 12:58:46";
ExifVersion = (
2,
3
);
ExposureBiasValue = 0;
ExposureMode = 1;
ExposureProgram = 1;
ExposureTime = "0.003125";
FNumber = "6.3";
Flash = 16;
FlashPixVersion = (
1,
0
);
FocalLength = 22;
FocalPlaneResolutionUnit = 2;
FocalPlaneXResolution = "2857.773";
FocalPlaneYResolution = "2904.202";
ISOSpeedRatings = (
3200
);
LensModel = "EF-S10-22mm f/3.5-4.5 USM";
LensSpecification = (
10,
22,
0,
0
);
MeteringMode = 5;
PixelXDimension = 2592;
PixelYDimension = 1728;
SceneCaptureType = 0;
ShutterSpeedValue = "8.375";
SubsecTime = 35;
SubsecTimeDigitized = 35;
SubsecTimeOriginal = 35;
WhiteBalance = 1;
};
"{IPTC}" = {
StarRating = 0;
};
"{TIFF}" = {
DateTime = "2012:12:24 12:58:46";
Make = Canon;
Model = "Canon EOS 7D";
Orientation = 1;
ResolutionUnit = 2;
XResolution = 72;
YResolution = 72;
"_YCbCrPositioning" = 2;
};
}
请注意,kCGImagePropertyMakerCanonDictionary
、kCGImagePropertyExifAuxDictionary
和 kCGImagePropertyTIFFDictionary
不是 CGImageSourceCopyPropertiesAtIndex
可以理解的选项。它们是它返回的字典中的键。通过它们似乎不会导致任何问题,但它也没有实现任何目标。
没有声明的属性键来访问我可以看到的图片样式数据,但它似乎是由 CGImageSourceCopyPropertiesAtIndex
返回的。如果您转储 props
字典,您应该会看到一个 {PictureStyle}
键,其中包含包含感兴趣信息的字典。您还会看到 {MakerCanon}
键。这对应于常量kCGImagePropertyMakerCanonDictionary
,并且该字典中的属性在relevant section of the documentation 中描述。 .
关于ios - 从元数据中提取图像图片样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15474524/
欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) | Powered by Discuz! X3.4 |