导航:首页 > 编程语言 > java获取图片的像素

java获取图片的像素

发布时间:2022-10-17 03:40:31

⑴ 关于通过java获取图片像素点时出现 java.lang.OutOfMemoryError: Java heap space 问题

没有发现好的办法,不过可以试一下调整eclipse jvm内存。
设置 eclipse.ini 加入下面选项
-vmargs
-Xms128M
-Xmx512M
-XX:PermSize=64M
-XX:MaxPermSize=128M

你可以根据具体情况修改那些数字。
当然还有其他办法调整eclipse jvm内存,也要根据你使用的eclipse 来调整。

⑵ java如何获得bmp图片的dpi值,记得有个水平分辨率和垂直分辨率

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

⑶ Java 如何获取一张图片的像素坐标

这个所谓像素就是你获得的每个点,而且你是放在数组里,不过应该是二维数组吧,你上边写的是一维数组,二位的话数组中所在的位置不就是像素坐标了吗

⑷ java 怎么获取图片圆型区域里的所有像素点

首先,点动成线,也就是如果把一条线花短一点就可以类似一个点。其次,点的大小问题,就像windows自带的画图一样,点的大小是可以改变的,很灵活,用代码写很麻烦。在其次,Graphics虽说没有点,但是你画一个实心的圆就是点了

⑸ java中如何读取图片的像素

BufferedImage img = ImageIO.read(new File(filename));
Raster ra = img.getData();
Rectangle rect = ra.getBounds();
// int nWidth = ra.getMinX();
int nImageDate[] = new int[rect.height*rect.width];
int nTemp[] = new int[400*400];
nImageDate = ra.getPixels(0,0,rect.width, rect.height,nTemp);

⑹ java 中如何获得灰度图像的像素值,getRGB和getRaster有什么区别

关于图像像素值,我想要先讲一下Java中如何组织一个图像对象BufferedImage的,
一个BufferedImage的像素数据储存在Raster中,ColorModel里面储存颜色空间,类型等
信息,当前Java只支持一下三种图像格式- JPG,PNG,GIF,如何向让Java支持其它格式,首
先要 完成Java中的图像读写接口,然后打成jar,加上启动参数- Xbootclasspath/p
newimageformatIO.jar即可。
取得BufferedImage的代码如下:
File file = new File("D:\\test\\blue_flower.jpg");
BufferedImage image = ImageIO.read(file);

取得像素使用getRGB,代码如下:
int type= image.getType();
if ( type ==BufferedImage.TYPE_INT_ARGB || type == BufferedImage.TYPE_INT_RGB )
return (int [])image.getRaster().getDataElements(x, y, width, height, pixels );
else
return image.getRGB( x, y, width, height, pixels, 0, width );

写入像素,才可能用到getRaster,在type为ARGB 或RGB时,必须使用getRaster().setDataElements方式设置,其他格式直接setRGB,代码如下:
int type= image.getType();
if ( type ==BufferedImage.TYPE_INT_ARGB || type == BufferedImage.TYPE_INT_RGB )
image.getRaster().setDataElements(x, y, width, height, pixels );
else
image.setRGB(x, y, width, height, pixels, 0, width );

⑺ java 如何获取图片的像素值

try{
File _file = new File("C:/Documents and Settings/mayuanfei/My Documents/女友照片.jpg"); //读入文件
Image src = javax.imageio.ImageIO.read(_file); //构造Image对象
int wideth=src.getWidth(null); //得到源图宽
int height=src.getHeight(null); //得到源图长
System.out.println(wideth+","+height);
}catch(Exception e){
e.printStackTrace();
}

⑻ java获取图片分辨率

用apache的开源类 上网下载个sanselan-0.97-incubator.jar架包导入项目中
这个架包所提供的类中可以读取图片的dpi

⑼ 给定一幅图像,用java读取每个像素的RGB三个颜色值

int rgbR;
int rgbG;
int rgbB;
int minx = 0;
int miny = 0;
try {
File file = new File("E:\\dd.png");
BufferedImage image = ImageIO.read(file);
int width = image.getWidth();//图片宽度
int height = image.getHeight();//图片高度

for (int i = minx; i < width; i++) {
for (int j = miny; j < height; j++) {
int pixel = image.getRGB(i, j); // 下面三行代码将一个数字转换为RGB数字
rgbR = (pixel & 0xff0000) >> 16;
rgbG = (pixel & 0xff00) >> 8;
rgbB = (pixel & 0xff);
System.out.println("i=" + i + ",j=" + j + ":(" + rgbR + "," + rgbG + "," + rgbB + ")");
}
}

System.out.println("图片宽度为:"+width+",高度为:"+height);

} catch (IOException e) {
System.out.println("读取文件出错");
e.printStackTrace();
}

⑽ java 怎么提取Image对象的像素数据

这个是一段透明化处理的代码,里面有获取像素的代码存在!希望对你有所帮助!
pixels将是像素,int pixels[] = (int[]) pgr.getPixels();这里将写入到数组中了!

/**
* 使图片中的某一种颜色透明
*
* @param image
* Image
* @param RGB16
* String 十六进制的六位颜色值字符串
* @param isFiltrate
* boolean
* @return Image
*/
public static Image setTranImage(Image image, String RGB16,
boolean isFiltrate)
{
int width = image.getWidth(null);
int height = image.getHeight(null);
Image abufferedimage = new BufferedImage(width, height, 2);
Graphics g = abufferedimage.getGraphics();
g.drawImage(image, 0, 0, width, height, 0, 0, width, height, null);
g.dispose();
// 透明化处理
PixelGrabber pgr = new PixelGrabber(abufferedimage, 0, 0, -1, -1, true);
try
{
pgr.grabPixels();
}
catch (InterruptedException ex)
{
ex.getStackTrace();
}
int pixels[] = (int[]) pgr.getPixels();
if (isFiltrate && RGB16.length() == 6)
{
// 循环像素
for (int i = 0; i < pixels.length; i++)
{
// 去色
if (((pixels[i] & 0x00ff0000) >> 16 == Integer.parseInt(
RGB16.substring(0, 2), 16)
&& (pixels[i] & 0x0000ff00) >> 8 == Integer.parseInt(
RGB16.substring(2, 4), 16) && (pixels[i] & 0x000000ff) == Integer
.parseInt(RGB16.substring(4, 6), 16)))
{
// 透明化
pixels[i] = 0;
}
}
}
ImageProcer ip = new MemoryImageSource(pgr.getWidth(),
pgr.getHeight(), pixels, 0, pgr.getWidth());
return toolkit.createImage(ip);
}

阅读全文

与java获取图片的像素相关的资料

热点内容
sha256算法java代码 浏览:288
安卓手机为什么没有桌面插件 浏览:346
鼎新app是什么 浏览:113
程序员和施工员哪个有前途 浏览:614
浙江百兆服务器云空间 浏览:827
php和html5学哪个比较好 浏览:388
瑜伽pdf下载地址 浏览:252
小花猫app改名叫什么 浏览:837
编程器固件修改 浏览:523
沈阳技校有程序员吗 浏览:300
各行app的基金有什么不一样吗 浏览:62
python编译器怎么装 浏览:73
新浪php笔试题 浏览:138
新时达服务器如何自学习 浏览:27
程序中什么命令用来输入单字符 浏览:59
php是否有数据 浏览:141
虚拟云服务器是什么意思 浏览:279
vb是编译性语言吗 浏览:209
json格式用什么编译器 浏览:319
word转pdf代码 浏览:802