Expose AR Frame iso
This commit is contained in:
@@ -112,6 +112,7 @@ namespace OpenVulkano::AR
|
||||
camNode["ExposureOffset"] >> frameData.exposureOffset;
|
||||
if (camNode["FocalLength"].readable()) camNode["FocalLength"] >> frameData.focalLength;
|
||||
if (camNode["FNumber"].readable()) camNode["FNumber"] >> frameData.fNumber;
|
||||
if (camNode["ISO"].readable()) camNode["ISO"] >> frameData.isoSpeed;
|
||||
uint64_t nanos;
|
||||
root["Timestamp"] >> nanos;
|
||||
frameData.timestamp = nanos;
|
||||
@@ -150,6 +151,7 @@ namespace OpenVulkano::AR
|
||||
ExposureOffset: {}
|
||||
FocalLength: {}
|
||||
FNumber: {}
|
||||
ISO: {}
|
||||
Timestamp: {}
|
||||
TimestampDepth: {}
|
||||
TrackingState:
|
||||
@@ -170,7 +172,7 @@ Light:
|
||||
camMat[0][0], camMat[1][0], camMat[2][0],
|
||||
camMat[0][1], camMat[1][1], camMat[2][1],
|
||||
camMat[0][2], camMat[1][2], camMat[2][2],
|
||||
exposureTime, exposureOffset, focalLength, fNumber,
|
||||
exposureTime, exposureOffset, focalLength, fNumber, isoSpeed,
|
||||
timestamp.GetNanos(), timestampDepth.GetNanos(),
|
||||
trackingState.GetName(), lightIntensity, lightColorTemp
|
||||
);
|
||||
|
||||
@@ -20,6 +20,7 @@ namespace OpenVulkano::AR
|
||||
Math::Timestamp timestamp, timestampDepth;
|
||||
ArTrackingState trackingState;
|
||||
float physicalPixelSize = 0, focalLength = 0, fNumber = 0;
|
||||
int isoSpeed = 0;
|
||||
|
||||
[[nodiscard]] std::string ToYaml() const;
|
||||
|
||||
|
||||
@@ -93,6 +93,8 @@ namespace OpenVulkano::AR::ArKit
|
||||
{
|
||||
frameData.focalLength = [(NSNumber*)[arFrame.exifData valueForKey:(__bridge NSString*)kCGImagePropertyExifFocalLength] floatValue];
|
||||
frameData.fNumber = [(NSNumber*)[arFrame.exifData valueForKey:(__bridge NSString*)kCGImagePropertyExifFNumber] floatValue];
|
||||
auto isos = (NSArray*)[arFrame.exifData valueForKey:(__bridge NSString*)kCGImagePropertyExifISOSpeedRatings];
|
||||
frameData.isoSpeed = [(NSNumber*)[isos firstObject] intValue];
|
||||
}
|
||||
|
||||
return frameData;
|
||||
|
||||
Reference in New Issue
Block a user