0 0

java 怎么得到一张bmp图片的像素数组20

具体也就是怎么用 getRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize)
这个方法  最好给个例子   而且最好是 存到Byte数组中   
注:api我已经看过了   希望能得到一个用这个函数的例子  
2012年2月27日 15:52

3个答案 按时间排序 按投票排序

0 0

采纳的答案

上述代码是
1,读取一个bmp文件,把bmp的所有像素用rgbArray存储起来,
2,然后取其中一个像素点(x0,y0),把它构造成一个Color对象,
3,构造一个类型一样的BufferedImage imgOut,把像素矩阵rgbArray写到BufferedImage,
4,把imgOut写入文件
   这个Color对象有getRed,getBlue,getBlack方法,可以分别获取这个像素在三个颜色分量上的灰度值。

2012年2月27日 17:01
0 0

int的rgb(4 byte)共有四个信息,rgb的格式是0xFFFFFFFF,分别表示 alpha 信息:R分量:G分量:B分量,各占8bit。所以你所谓的byte数组不知道是什么情况,一个byte是无法存储一个像素的。

2012年2月27日 17:06
0 0

public static void main(String[] args) {
		OutputStream output = null;
		try {
			// read bmp
			BufferedImage img = ImageIO.read(new File("F:/temp/1.bmp"));
			int imageType = img.getType();
			int w = img.getWidth();
			int h = img.getHeight();
			int startX = 0;
			int startY = 0;
			int offset = 0;
			int scansize = w;
			// rgb的数组
			int[] rgbArray = new int[offset + (h - startY) * scansize
					+ (w - startX)];
			img.getRGB(startX, startY, w, h, rgbArray, offset, scansize);

			int x0 = w / 2;
			int y0 = h / 2;
			int rgb = rgbArray[offset + (y0 - startY) * scansize
					+ (x0 - startX)];
			Color c = new Color(rgb);
			System.out.println("中间像素点的rgb:" + c);
			// create and save to bmp
			File out = new File("F:/temp/2.bmp");
			if (!out.exists())
				out.createNewFile();
			output = new FileOutputStream(out);
			BufferedImage imgOut = new BufferedImage(w, h, imageType);
			imgOut.setRGB(startX, startY, w, h, rgbArray, offset, scansize);
			ImageIO.write(imgOut, "bmp", output);
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (output != null)
				try {
					output.close();
				} catch (IOException e) {
				}
		}
	}

2012年2月27日 16:57

相关推荐

    C语言对BMP图像的读和写和对像素的操作

    BMP图像由文件头、信息头和像素数组三部分组成: - **文件头**:包含文件类型等基本信息。 - **信息头**:包含图像的尺寸、颜色深度等详细信息。 - **像素数组**:存放实际的像素数据。 #### 三、读取BMP图像 在...

    bmp图像像素点位置及RGB值显示

    "bmp图像像素点位置及RGB值显示"的主题涉及了如何解析BMP文件并提取其中的像素信息,包括位置坐标和颜色值。 BMP文件的结构主要包括文件头、信息头和像素数据。文件头包含了文件的基本信息,如文件类型标识、文件...

    读bmp图像像素存txt并输出bmp图像

    读bmp图片,将rgb存入txt 并再输出bmp图片

    java实现图片bmp转换压缩为jpg

    java实现图片bmp转换压缩为jpg,win7格式下转换后图片和原图看起来差别不大

    java编程简单获取图片像素的方法

    在Java编程中,获取图片像素是一项常见的任务,特别是在图像处理、计算机视觉或数据分析等领域。本文将详细介绍如何使用Java API来简单地获取图片的像素信息。 首先,我们需要导入相关的Java类库,包括`java.awt....

    用java读取bmp格式图片文件

    通过读取bmp格式文件的数据格式,用数组合理的读取后,重新画出该图片

    Java读取所有色bmp图片格式

    使用这个工具类,你可以方便地读取各种颜色深度的BMP图片,将其转换为Java可以操作的图像对象。在实际应用中,你可能还需要考虑图像的旋转、缩放、裁剪等几何处理,以及颜色空间转换、滤波等图像处理操作。这些都是`...

    bmp图片像素提取和二值化

    本篇文章将详细探讨如何在VC++环境下实现BMP图片的像素提取以及二值化操作。 像素提取是图像处理的基础步骤,它涉及到读取BMP文件并访问其像素数组。在VC++中,我们通常会使用C++标准库或Windows API函数来打开和...

    java语言读取bmp文件

    读取BMP文件并用Java进行处理涉及到对BMP文件格式的理解、字节序的转换以及利用Java AWT库进行图像显示。虽然Java本身不直接支持BMP文件的读取,但通过编写适当的代码,可以实现这一功能,进而为开发图像处理应用...

    bmp图像全部像素RGB值读取

    VC6程序,该程序可读取bmp图像各像素的RGB值,并保存至txt文件中

    java对bmp格式图象的处理.rar_bmp java_bmp处理_java .bmp

    对于更高级的BMP处理,如修改像素、裁剪、旋转等,可能需要直接操作`BufferedImage`的像素数组。`BufferedImage`提供了一种方式来访问和修改每个像素的RGB值。例如,以下代码会将所有像素转为灰色: ```java for ...

    将两张或三张BMP图片合并为一张

    标题“将两张或三张BMP图片合并为一张”指的是一个编程项目,该项目旨在利用编程语言读取多个BMP图像文件,并将它们合并成一个新的单一图像。描述中提到的“有源代码”意味着这个过程可以通过提供的代码来实现,这为...

    BMP图像处理接口一

    为了实现这一功能,我们需要先读取源BMP图像的数据,然后定位目标BMP图像的嵌入位置,接着将源图像的像素数据按对应位置写入目标图像的像素数组。这里涉及到像素坐标转换、图像裁剪以及颜色空间管理等技术。对于24位...

    bmp.rar_bmp 提取_bmp像素太高_bmp宽高_像素1921080BMP_图像处理像素

    在这个"bmp.rar_bmp 提取_bmp像素太高_bmp宽高_像素1921080BMP_图像处理像素"的主题中,我们将深入探讨BMP文件的结构、像素处理以及与图像尺寸相关的内容。 首先,BMP文件是未经压缩的图像格式,它存储了每个像素的...

    BMP图像转16进制数组

    BMP文件包含图像的宽度、高度、颜色深度和实际像素数据。它通常采用未经压缩的数据存储,因此文件较大。BMP图像的颜色信息可以是8位灰度、24位RGB(红绿蓝)三通道或者更高位深,如32位包括透明度信息的ARGB。 16...

    JAVA BMP解码 超详细解释

    - 创建一个与图像尺寸相匹配的像素数组。 - 从文件中按行反序读取像素数据,根据颜色深度转换为RGB值。 - 将像素数据存储到数组中,准备用于绘制或进一步处理。 在JAVA中,可以使用`java.io`和`java.nio`包中的...

    29张标准测试图像,bmp图像

    标题中提到的"29张标准测试图像,bmp图像"是一组用于测试和验证图像处理算法的数据集,这些图像通常具有各种特性,比如不同颜色、纹理、对比度和复杂度,以全面测试算法的性能。 BMP文件结构主要由三部分组成:文件...

    读取BMP图像RGB值以及简单生成BMP图像

    在计算机图形学中,BMP(Bitmap)是一种常见的位图图像格式,用于存储像素数据。BMP文件由一系列数据块组成,包括文件头、信息头和像素数据。本篇文章将详细探讨如何用C语言来读取BMP图像的RGB值,并生成新的BMP图像...

    显示bmp图像

    在计算机编程领域,显示BMP图像是一项常见的任务,特别是在图形用户界面(GUI)应用程序中。BMP(Bitmap)是一种无损的位图格式,广泛用于存储图像数据。在这个任务中,我们将探讨如何读取本地的BMP图像并在Picture...

    java 实现 bmp 转 jpg

    在Java编程语言中,将BMP(Bitmap)图像格式转换为JPEG(Joint Photographic Experts Group)格式是一项常见的图像处理任务。BMP是一种无损、未经压缩的图像格式,而JPEG则是一种广泛使用的有损压缩格式,适合存储...

Global site tag (gtag.js) - Google Analytics