CoreImage坐标系

2024-04-23

I have CVPixelBufferRef从一个AVAsset。我正在尝试申请CIFilter到它。我用这些行:

CVPixelBufferRef pixelBuffer = ...
CVPixelBufferRef newPixelBuffer = // empty pixel buffer to fill
CIContex *context = // CIContext created from EAGLContext
CGAffineTransform preferredTransform = // AVAsset track preferred transform
CIImage *phase1 = [CIImage imageWithCVPixelBuffer:pixelBuffer];
CIImage *phase2 = [phase1 imageByApplyingTransform:preferredTransform];
CIImage *phase3 = [self applyFiltersToImage:phase2];

[context render:phase3 toCVPixelBuffer:newPixelBuffer bounds:phase3.extent colorSpace:CGColorSpaceCreateDeviceRGB()];

不幸的是,我得到的结果方向不正确。例如,在肖像模式下拍摄的视频是上下颠倒的。我想问题出在从AVAsset to CoreImage坐标系(在 XCode 中显示预览phase2也呈现出错误的结果)。如何修复它?


我通过这样做解决了这个问题,它应该将所有内容正确定向到坐标空间

var preferredTransform = inst.preferredTransform
preferredTransform.b *= -1
preferredTransform.c *= -1

var outputImage = CIImage(cvPixelBuffer: videoFrameBuffer)
                    .applying(preferredTransform)
outputImage = outputImage.applying(CGAffineTransform(translationX: -outputImage.extent.origin.x, y: -outputImage.extent.origin.y))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CoreImage坐标系 的相关文章

随机推荐

  • 设置配置项 (csrf) 在 Codeigniter 中不起作用

    我只想在我的几个控制器中打开 csrf 保护 所以我有 function construct parent construct this gt load gt library form validation this gt load gt
  • 在 ASP.NET Core 1.0 上处理大文件上传

    当我将大文件上传到 ASP NET Core 中的 Web api 时 运行时会在触发处理和存储上传的函数之前将文件加载到内存中 对于大量上传 这会成为一个问题 因为它既慢又需要更多内存 对于早期版本的 ASP NET有一些文章 http
  • Angular4 - ZoneAwareError

    当我尝试运行 Angular4 时 我突然看到一个错误 如下所示 ERROR ZoneAwareError zone symbol error Error Uncaught in promise Error Error at Error Z
  • 如何在scala Spark中按键连接两个数据集

    我有两个数据集 每个数据集都有两个元素 以下是示例 数据1 名称 动物 abc def monkey 1 df gh zebra 数据2 名称 水果 a efg apple abc def banana 1 预期结果 名称 动物 水果 ab
  • 初始化字符串时额外的花括号

    根据问题string array 是什么意思 是什么意思以及为什么它有效 https stackoverflow com questions 21481462 what does this code mean and why does it
  • 如何检测(心电图)波的模式?

    我正在尝试读取心电图图像并检测其中的每个主波 P 波 QRS 波群和 T 波 我可以读取图像并获得向量 例如 4 2 4 4 4 9 4 7 我需要一种算法来遍历这个向量并检测每个波何时开始和结束 一个例子 如果它们总是具有相同的大小 或者
  • #pragma pack、模板类型定义和结构对齐

    使用 Visual Studio 或 gcc 如果有的话 pragma pack push 16 typedef std map
  • 如何在Pythonlogging.Formatter中右对齐级别字段

    我目前正在尝试右对齐 Python 记录器中的日志记录级别字段 以便输出如下 2011 10 14 13 47 51 DEBUG starting smtphandlers py 96 2011 10 14 13 47 51 INFO fi
  • 重定向后的 HTTP 响应代码

    有一个到服务器的信息重定向 一旦来自服务器的响应 我想检查 HTTP 代码以抛出异常 如果有任何以 4XX 开头的代码 为此 我需要知道如何从标头中仅获取 HTTP 代码 这里还涉及到服务器的重定向 所以我担心curl 对我来说没有用 到目
  • Java 链表数组

    我正在尝试编写一个可以允许多个值的自定义哈希表 我们正在通过以下方式进行 创建大小为 Integer MAX 的链表数组 自定义链表 将值 int 插入到编号为键编号的链接列表中 表示结构如下 value1 gt value6 NULL N
  • 无法在 iPhone 6 上打开 Apple Pay 表

    我想制作一个示例项目 当用户单击我的应用程序上的 使用 Apple Pay 付款 按钮时 该项目会打开 Apple Pay 表 我在配备 iOs 版本 8 1 包含 Apple Pay 和 Xcode 6 1 GM 的 iPhone 6 上
  • 如何检测 android RecyclerView 中的 OverScroll?

    我尝试覆盖 onOverScrolled 但它没有被触发 public class MyRecyclerView extends RecyclerView public MyRecyclerView NonNull Context cont
  • 将 ed25519 私钥 ssh 转换为 RSA 私钥

    我正在寻找使用将 ed25519 私钥转换为 rsa 私钥ssh keygen I found 这个有用的指南 https man openbsd org ssh keygen但我无法弄清楚如何指定输入格式为 ed25519 并且导出格式应
  • 用 C++ 发出声音(嘟嘟声)

    如何用c 使硬件发出蜂鸣声 打印特殊字符 ASCII BEL 代码7 cout lt lt a Source https bytes com topic c answers 127539 making computer speaker be
  • 如何在align环境中标记每个方程?

    我想知道如何在对齐环境中标记每个方程 例如 begin align label eq lnnonspbb lambda i mu i 0 mu i xi i 0 lambda i y i w T x i b 1 xi i 0 end ali
  • 我可以 POST 和 GET 到同一个 PHP 页面吗

    例如 我想知道是否可以在同一个 php 页面上进行 GET 和 POST 我想将数据发送到 http www example com my php 所以首先是 GET http www example com my php task dos
  • 使用VBS脚本检查字符串是否包含特定字符

    我的脚本正在做以下几点 检索所有我选择的文件夹文件 按日期对它们进行分类 从最近的到较早的 在窗口中显示它们 这是我的 VBS 脚本 我检索它here http codes sources commentcamarche net sourc
  • tkinter .after() 秒和分

    大家好 我在 tkinter 中制作计时器时遇到问题 但我无法使用time sleep 所以我用 after 我有新问题 我输入了一个条目 我希望条目编号为 60 在设定时间之后 将写入一条文本 内容如下 gt gt time is ove
  • Excel 单元格值作为 SQL 查询 where 语句

    我对 SQL 很陌生 我想使用此查询将数据从 SQL Server 导入到 Excel SELECT Model Factory TargetTime TotalEvalMins FROM AMSView WHERE WeekNumber
  • CoreImage坐标系

    I have CVPixelBufferRef从一个AVAsset 我正在尝试申请CIFilter到它 我用这些行 CVPixelBufferRef pixelBuffer CVPixelBufferRef newPixelBuffer e