簡體   English   中英

將 RGB 字節 [][] 圖像轉換為字節 [] 的最佳方法

[英]Best way to convert RGB byte[][] image to byte[]

以 byte[][] 對象的形式獲取幀數據,其中每一行對應一個 (R,G,B) 通道,長度為(幀寬*幀高)。 我希望以類似的方式將其轉換為 byte[] 格式,如下所示:

byte[][] original_frame;
byte[] converted_frame = convert(original_frame);
ByteArrayInputStream bis = new ByteArrayInputStream(frame);
BufferedImage bImage2 = ImageIO.read(bis);

據我所知,ImageIO 采用 jpeg 格式。 我是否需要將每一幀都轉換為 JPEG 圖像,還是有更自然的方法來做到這一點?

我相信您在問如何從二維數組轉換為一維數組。 如果所有行的長度均為 3,如何執行此操作如下:

ArrayList<byte> x = new ArrayList<byte>();
for(int i=0; i<original_frame.length; i++){
   x.add(original_frame[i][0]);
   x.add(original_frame[i][1]);
   x.add(original_frame[i][2]);
}
byte[] converted_frame= new byte[x.size()];
for(int i=0;i<x.size();i++){
   converted_frame[i]=x.get(i);
}

我希望這有幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM