我在将浮点MTLTexture转换回浮点cv :: Mat时遇到了问题。
通常这不是问题,但标准的32位纹理浮点在Metal中是不可写的。我必须使用可读/可写的16位/通道浮点纹理;一旦我得到16位纹理数据,我无法单独访问每个通道,因为本机浮点数是32位长,而16位数据的指针算法会出错。
我考虑过预定义自己的16位浮点数,但我想检查是否有其他更简单的方法来实现这一点。
答案 0 :(得分:1)
iOS支持float16类型,您是否尝试过提取半值并转换为float32?
写浮动纹理时遇到了同样的问题,所以我只使用了一个缓冲区,如果你不需要采样,这很好。
最近Apple可能已经改变了一些东西,因为我能够写入漂浮纹理。确保您拥有最新版本。