是否有可能將雙二維值寫入緩衝圖像,而無需在Java中進行任何類型的轉換?我有一個雙值的二維矩陣。我希望把它寫成圖像,但是在緩衝圖像中只能寫入整數值。最後我必須能夠讀取那些圖像的雙重值。有任何想法嗎 ??幫我出如何在緩存的圖像中寫入雙值
-2
A
回答
1
當然可以,但首先你必須創建一個BuffuredImage類型DataBufferDouble的DataBuffer中:
public static BufferedImage Double(int width, int height, int channel)
{
ColorSpace myColorSpace = new FloatCS(channel == 1 ? ColorSpace.TYPE_GRAY : ColorSpace.TYPE_RGB, channel) ;
ColorModel myColorModel = new ComponentColorModel(myColorSpace,null,false,false,ColorModel.OPAQUE,DataBuffer.TYPE_DOUBLE) ;
return new BufferedImage(myColorModel, myColorModel.createCompatibleWritableRaster(width, height), false, null) ;
}
然後你訪問使用柵格或直接與DataBuffer中的像素,但不是的getRGB。
+0
謝謝@FiReTiTi。你能解釋我如何在圖像上使用它? –
+0
我剛剛給你的代碼已經是一張圖片。然後,您可以使用Raster(mymimage.getRaster())和getSample和setSample方法,或者使用DataBuffer:double [] buffer =((DataBufferDouble)my image.getRaster()。getDataBuffer())來訪問像素值。的getData() – FiReTiTi
相關問題
- 1. Jpanel中的雙緩存圖像示例
- 2. 如何在iphone中緩存圖像
- 3. 如何在asp.net中緩存圖像
- 4. 如何緩存GeckoFX中的圖像
- 5. Android圖像緩存 - 如何?
- 6. 如何比較圖像(緩存圖像)?
- 7. xcode在UIScrollview中緩存圖像圖像
- 8. 在UITableView中緩存圖像
- 9. 如何在HDFS上寫入緩衝圖像
- 10. 在Silverlight和雙向數據綁定中緩存圖像
- 11. 如何在webview上緩存圖像?
- 12. 如何在IIS7上緩存圖像
- 13. android中的圖像緩存
- 14. 緩存Memcached中的圖像
- 15. 如何將網頁寫入緩存?
- 16. 圖像緩存
- 17. 緩存圖像
- 18. 緩存圖像
- 19. 如何緩存tableview的圖像?
- 20. 如何緩存下載的圖像
- 21. 如何清除Facebook的圖像緩存
- 22. 圖像沒有存儲在緩存中
- 23. 將圖像保存在緩存中android
- 24. 將圖像存儲在緩存中
- 25. 在緩存中存儲ListView圖像
- 26. 如何在使用2個緩存庫時管理ios中的圖像緩存
- 27. 如何設置特定圖像不被保存在緩存中
- 28. 如何在Windows Phone 8中釋放圖像緩存/內存?
- 29. 在ListView中緩存下載的圖像
- 30. 如何將幀緩衝區數據寫入JPEG或BMP圖像
詢問家庭作業幫助的問題必須包括您迄今爲止解決問題所做的工作摘要,以及您解決問題的難點描述。請參見[如何創建最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)。 –
是的,你可以。您需要創建一個由'DataBuffer.TYPE_DOUBLE'' SampleModel'和'DataBuffer'支持的自定義'BufferedImage'。不知道它是多麼有用,但至少非常可行。 'double'值可以通過'DataBuffer'的後備數組直接訪問。 – haraldK
感謝您的幫助#haraldK先生。我會試試這個 –