我正在使用hololens,并尝试使用可用的世界/投影矩阵保存视频流。 我一直在尝试拍摄一系列照片并保存数据,但是我找不到保存图像和矩阵的方法。
当保存到磁盘时,没有选择获取图像捕捉框架(包含矩阵数据)的选项,当保存到内存时,我似乎无法将图像保存到磁盘。 我尝试使用以下方法,但是这似乎使我的统一程序崩溃了:
List<byte> imageBufferList = new List<byte>();
photoCaptureFrame.CopyRawImageDataIntoBuffer(imageBufferList);
byte[] myArrayImage = imageBufferList.ToArray();
然后使用它来转换字节数组:
using (MemoryStream mStream = new MemoryStream(byteArrayIn))
return Image.FromStream(mStream);
然后保存结果。
当我删除memorystream东西时,程序不会崩溃(但是它也不会保存我的图像)。
我一直在互联网上浏览,但是对此有很多含糊的说法 a)无法蜂鸣 b)使用内存流(但会崩溃)
有什么建议吗? 如果有人知道一种方法来保存每帧以及视频流的相应帧的所有矩阵(投影和世界)数据,那将是很大的帮助。
编辑:我也尝试研究https://github.com/VulcanTechnologies/HoloLensCameraStream,但这似乎给新的Unity版本带来了问题。关于此事有何评论?
要阐明我的最终目标: 拍摄时,程序应保存所有帧和相应的矩阵,例如:
Frame_01,Frame_02,Frame_03,...(.jpg / png /...)
World_matrix_01,World_matrix_02,...(。txt)
Projection_matrix_01,Projection_matrix_02,...(。txt)
答案 0 :(得分:1)
编辑:我也尝试研究https://github.com/VulcanTechnologies/HoloLensCameraStream,但这似乎给新的Unity版本带来了问题。关于此事有何评论?
我使用了它,并且在Unity 2018.3.13f1中效果很好。您只能在调试模式之外的Hololens中进行测试。