我试图导出单色“灰度”图像中特定像素的强度值。我有一些伪代码,但到目前为止我还无法实现真正有效的东西。
/**
* Retrieve the intensity value at location ('row', 'column') of the image 'img' and return it
* Note:
* - the 2D image is stored as an 8bit, 1D, row-major array of type byte
* - the data type byte is signed in Java
* - Slide 27 of chapter 2 introduces the representation of an image
* @param img in row major format
* @param row to evaluate
* @param column to evaluate
* @param width of img
* @param height of img
* @return the intensity value at row and column if within bounds, -1 otherwise
*/
public int getIntensityValue(byte[] img, int row, int column, int width, int height) {
int intensity = img[row,column];
return intensity;
}
也许这会对您有所帮助:
http://docs.oracle.com/javase/7/docs/api/java/awt/image/BufferedImage.html
http://docs.oracle.com/javase/7/docs/api/javax/imageio/ImageIO.html
BufferedImage img = ImageIO.read(new File("filePath.png"));
int sRbgColor = img.getRGB(int x, int y);
Color c = new Color(sRbgColor);
int red = c.getRed();
int green = c.getGreen();
int blue = c.getBlue();
如果是单色,那么红绿蓝应该相等。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)