【问题标题】:How to capture image in ARKit and send Binary data?如何在 ARKit 中捕获图像并发送二进制数据?
【发布时间】:2023-04-05 12:47:01
【问题描述】:

我想在 ARKit 中制作一个捕获图像并将字节数组发送到 TCP 服务器。

这是我的代码。

    @IBOutlet weak var sceneView: ARSCNView!
    @IBAction func sendButtonAction(_ sender: Any) {

    let captureImage:UIImage = self.sceneView.snapshot()
    }

我可以通过快照获取图像,但我不知道如何将其转换为字节数组(包括像素 R、G、B 数据。)

我尝试将 UIImage 更改为这样的二进制数据。

    let imageData: NSData = UIImagePNGRepresentation(captureImage)! as NSData

但这是不正确的,因为 imageData 的大小在我拍摄快照时是可变的 :(

我的目的是制作一个 captureImage 的 Byte(UInt8) 数组,其大小为 Width*Height*3(R,G,B) Bytes

如果您有任何解决此问题的想法,请帮助我。

【问题讨论】:

    标签: ios uiimage arkit


    【解决方案1】:

    我对使用 UIImagePNGRepresentation 对你不起作用的具体情况有点困惑,如果我遗漏了什么,或者你可以澄清一下。

    但是一方面,PNG 需要 RGBA,因此您可能想尝试UIImageJPEGRepresentation,因为它不支持 alpha 通道。

    如果你想得到一个实际的NSMutableArray,看看这个旧答案是否有帮助:https://stackoverflow.com/a/29734175/8895191

    【讨论】:

      猜你喜欢
      • 2016-07-10
      • 1970-01-01
      • 2019-07-18
      • 1970-01-01
      • 2017-03-05
      • 1970-01-01
      • 1970-01-01
      • 2013-03-07
      • 1970-01-01
      相关资源
      最近更新 更多