用Java从COM7端口读取图像数据

用Java从COM7端口读取图像数据,java,port,Java,Port,我正在做一个项目,在这个项目中,我必须将从相机芯片捕获的图像显示到电脑上 图像数据通过COM7端口发送到计算机。(我已经用哑终端程序检查过了)。基本上,我想做的是开发一个Java程序,它将读取COM端口,获取图像数据,处理它并在屏幕上显示它 我想知道的是如何在Java程序中从COM7端口读取此图像数据。您可能想从从从端口读取数据开始。对于这一点,一个简单的解决方案可能是有用的 由于您“认为”数据将是字节。。。请尝试以下操作: BufferedImage img = ImageIO.read(ne

我正在做一个项目,在这个项目中,我必须将从相机芯片捕获的图像显示到电脑上

图像数据通过COM7端口发送到计算机。(我已经用哑终端程序检查过了)。基本上,我想做的是开发一个Java程序,它将读取COM端口,获取图像数据,处理它并在屏幕上显示它


我想知道的是如何在Java程序中从COM7端口读取此图像数据。

您可能想从从从端口读取数据开始。对于这一点,一个简单的解决方案可能是有用的

由于您“认为”数据将是字节。。。请尝试以下操作:

BufferedImage img = ImageIO.read(new ByteArrayInputStream(bytes));

您也可以查看post

对于问题的串行端口部分,请像读取任何其他文件一样读取串行端口

  • 在'nix'上,串行端口被命名为
    /dev/ttySn
    ,其中n 0-3表示COM1到COM4。我猜想,如果存在更多的串行端口,那么系统上也会存在适当命名的文件来访问这些端口
  • 在Windows上,您只需使用特殊文件名
    COM1
    COM2
    ,等等

至于实际读取图像数据,正如其他人提到的,您需要知道它的格式。如果是Java已知的文件格式之一,可以尝试使用
ImageIO.read()
。如果是原始位图格式,则可以尝试通过从光栅创建缓冲图像,以及从适当的SampleModel和DataBuffer创建光栅,从原始数据构建缓冲图像。但是,您需要知道位图数据的格式才能执行此操作。

信息远远不够回答。数据以何种格式传输?这是毫无意义的。数据以何种文件或图像格式传输?我通过RS232链路从微控制器获取数据。根据摄像机规格,数据格式为:数据格式-YCrCb 4:2:2,GRB 4:2:2,RGB原始数据