簡體   English   中英

在Java中獲取jpeg圖像原始數據的簡便方法?

[英]Easy and quick way of getting raw data of jpeg image in Java?

我正在使用此手機應用程序作為我在PC上編寫的應用程序的眼睛。 網絡攝像頭應用程序允許我以jpeg格式下載即時快照。 我需要對這些鏡頭進行圖像處理,為了做到這一點,我想動手使用原始數據陣列-即描述圖像的像素矩陣。 如何才能做到這一點?

最簡單的方法是

ImageIO.read(new File("Image.jpeg"))

獲得BufferedImage 使用BufferedImage可以使用getRGB(int x, int y)getRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize)以獲得更好的性能。 此外, getRaster()是一個選項,我發現它是最快的(不過需要更多的努力)。

對於設置像素,存在類似的setRGB方法。

編輯: ImageIOjavax.​imageio.​ImageIO

也許最好的起點是閱讀有關圖像格式規范的幾句話。 那些應該解釋如何存儲不同格式的數據。 有了這些知識,您就可以真正編寫自己的解析器。

但請三思而后行:jpeg不僅是像素的光柵矩陣,例如位圖圖像。

您很可能最終將使用圖像處理庫,而不是自己處理原始數據。 這種方法更加方便,而且不易出錯。

暫無
暫無

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

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