【发布时间】:2012-05-06 03:40:42
【问题描述】:
我需要使用 UDP 套接字发送从相机获取的 IplImages。我正在使用 Qt。该应用程序有两个部分。服务器应从数码相机获取图像并通过 upd(广播)将它们发送到特定端口。客户端是 GUI 应用程序。他们将接收图像并将其显示在 QLabel 上。
我使用 OpenCV 处理图像,所以我的相机输入是 IplImage。我知道如何将其转换为QImage/QPixmap 并将其显示在标签上。但是找不到通过 udp 套接字发送IplImage 的方法...QUdpSocet::writeDatagram 只接受QByteArray 所以我需要将IplImage 转换为QByteArray,这应该非常快(不适合在服务器上转换图像)。
【问题讨论】:
-
在 Java 中,有一个 IplImage.getByteBuffer() 函数。我不知道它是否存在于 Qt 中。如果是这样,它将是您正在寻找的东西,如果不是,您可以随时为 IplImage 编写自己的序列化函数
-
IplImage类中有IplImage::imageData字段。我不确定这是否是实际数据……我会试试的。