Java 如何使用套接字发送位图?
我有一个位图图像,我想使用Socket类发送它。位图需要从Android客户端发送到服务器。服务器是一个C++程序。我该怎么做 我在看Android的位图类。但它并没有真正谈论它Java 如何使用套接字发送位图?,java,android,c++,android-camera,Java,Android,C++,Android Camera,我有一个位图图像,我想使用Socket类发送它。位图需要从Android客户端发送到服务器。服务器是一个C++程序。我该怎么做 我在看Android的位图类。但它并没有真正谈论它 另外,如何在服务器端解码此位图?服务器正在运行OpenCV程序,我需要将位图解释为IplImage(IplImage是表示图像的OpenCV结构)。如果我有图像缓冲区,我可以将IplImage设置为指向此缓冲区。将此位图的JPEG(或PNG)版本作为字节[]发送到服务器会更有效 在服务器端,您可以轻松地将此字节数组解码
另外,如何在服务器端解码此位图?服务器正在运行OpenCV程序,我需要将位图解释为IplImage(IplImage是表示图像的OpenCV结构)。如果我有图像缓冲区,我可以将IplImage设置为指向此缓冲区。将此位图的JPEG(或PNG)版本作为字节[]发送到服务器会更有效
在服务器端,您可以轻松地将此字节数组解码为OpenCV IplImage或Mat。相关:。若可以将位图保存到文件中,则可以将位图发送到套接字。只需将
FileOutputStream
更改为Socket.getOutputStream()
或您拥有的流。然后在服务器端,使用imdecode
或imread
将png
转换为Mat
。将Mat
转到IplImage
的方法是:。是否有OpenCV函数来读取字节并将其从JPEG转换为IplImage或Mat?@johnchen902给出了上面的正确答案:您需要使用imread
或imdecode
。它返回Mat
,但您可以轻松地将其转换为IplImage
<代码>IplImage lpl=mat代码>。