public static BufferedImage bufferedImageFromRosMessageRaw(ColorModel colorModel, sensor_msgs.Image imageMessage) { int width = imageMessage.getWidth(); int height = imageMessage.getHeight(); byte[] payload = imageMessage.getData().array(); BufferedImage ret = new BufferedImage(width, height, BufferedImage.TYPE_3BYTE_BGR); DataBuffer dataBuffer = new DataBufferByte(payload, payload.length, imageMessage.getData().arrayOffset()); SampleModel sampleModel = colorModel.createCompatibleSampleModel(width, height); WritableRaster raster = Raster.createWritableRaster(sampleModel, dataBuffer, null); ret.setData(raster); return ret; }
public void publish(String frameID, BufferedImage img, Time t) Header header = message.getHeader(); message.setHeader(header); message.setHeight(img.getHeight()); message.setWidth(img.getWidth()); message.setEncoding("bgr8"); message.setIsBigendian((byte)0); message.setStep(3*img.getWidth()); ChannelBuffer channelBuffer = cbf.getBuffer(bImg, 0, bImg.length); message.setData(channelBuffer); publish(message);
public void onNewMessage(sensor_msgs.Image message) { long timeStamp = message.getHeader().getStamp().totalNsecs(); imageReceived(timeStamp, RosTools.bufferedImageFromRosMessageRaw(colorModel, message)); }
public void onNewMessage(sensor_msgs.Image message) { long timeStamp = message.getHeader().getStamp().totalNsecs(); imageReceived(timeStamp, RosTools.bufferedImageFromRosMessageRaw(colorModel, message)); }
public void publish(String frameID, BufferedImage img, Time t) Header header = message.getHeader(); message.setHeader(header); message.setHeight(img.getHeight()); message.setWidth(img.getWidth()); message.setEncoding("bgr8"); message.setIsBigendian((byte)0); message.setStep(3*img.getWidth()); ChannelBuffer channelBuffer = cbf.getBuffer(bImg, 0, bImg.length); message.setData(channelBuffer); publish(message);
public static BufferedImage bufferedImageFromRosMessageRaw(ColorModel colorModel, sensor_msgs.Image imageMessage) { int width = imageMessage.getWidth(); int height = imageMessage.getHeight(); byte[] payload = imageMessage.getData().array(); BufferedImage ret = new BufferedImage(width, height, BufferedImage.TYPE_3BYTE_BGR); DataBuffer dataBuffer = new DataBufferByte(payload, payload.length, imageMessage.getData().arrayOffset()); SampleModel sampleModel = colorModel.createCompatibleSampleModel(width, height); WritableRaster raster = Raster.createWritableRaster(sampleModel, dataBuffer, null); ret.setData(raster); return ret; }