Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 是否可以使用VImage检查两个捕获帧之间的差异?_Objective C_Macos_Accelerate Framework - Fatal编程技术网

Objective c 是否可以使用VImage检查两个捕获帧之间的差异?

Objective c 是否可以使用VImage检查两个捕获帧之间的差异?,objective-c,macos,accelerate-framework,Objective C,Macos,Accelerate Framework,当我们开始录制mac屏幕时,我有一个问题。我只需要采取唯一的帧,而不是重复帧。是否可以使用Macos加速框架进行过滤?您可以使用vDSP进行过滤。苹果的示例代码讨论了vImage和vDSP之间的数据共享。获得两幅图像的像素值集合后,使用查找差值,然后使用查找最大元素的值。如果最大值小于某个阈值,则两个缓冲区相同 请注意,vDSP不适用于Pixel_8值-如果您未捕获每通道32位像素,则需要转换为Float,这可能会产生开销 当然,根据您捕获屏幕的方式,您可能根本不需要vImage。例如,如果您正

当我们开始录制mac屏幕时,我有一个问题。我只需要采取唯一的帧,而不是重复帧。是否可以使用Macos加速框架进行过滤?

您可以使用vDSP进行过滤。苹果的示例代码讨论了vImage和vDSP之间的数据共享。获得两幅图像的像素值集合后,使用查找差值,然后使用查找最大元素的值。如果最大值小于某个阈值,则两个缓冲区相同

请注意,vDSP不适用于
Pixel_8
值-如果您未捕获每通道32位像素,则需要转换为
Float
,这可能会产生开销

当然,根据您捕获屏幕的方式,您可能根本不需要vImage。例如,如果您正在获取
CVPixelBuffer
实例,请使用
CVPixelBufferGetBaseAddressOfPlane
将数据传递给vDSP