Tag: 图像

将加密的图像字节保存到文件并恢复到java中的原始图像

我有一个图像加密和解密的问题,原因现在已经确定,但我无法找到解决方案。 我正在尝试实施这个项目 但问题是加密后的图像字节在使用rasterclass和ImageIO类写入图像文件后无法恢复 我的问题,尝试过的代码和解释都在这里提交 我必须在加密图像(Stegnography)中嵌入文本。 我用Google搜索并找到了在图片中嵌入文字的代码。 但我必须首先加密图像并在此加密图像中嵌入文本。 我的尝试如下。 /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package tbn; import java.awt.Graphics2D; import java.awt.Point; import java.awt.Transparency; import java.awt.image.BufferedImage; import java.awt.image.ColorModel; import java.awt.image.ComponentColorModel; import java.awt.image.DataBuffer; import java.awt.image.DataBufferByte; import java.awt.image.Raster; import java.awt.image.WritableRaster; import java.io.File; import java.io.IOException; import java.security.InvalidKeyException; […]

调整图像文件的大小

我有很多图像,我的数码相机拍摄的分辨率非常高,分辨率为3000 * 4000,需要大量的硬盘空间,我用Photoshop打开每张图片并重新调整尺寸,但分辨率很小,但需要很多时间和精力 我认为我可以编写简单的程序打开图像文件夹并读取每个文件并获得它的宽度和高度,如果它非常高,则更改它并用小图像覆盖图像。

Java分区表面成小方块

我想知道是否有任何算法做这样的事情: 给定一个特定的表面,它将它分成相同大小的较小矩形。 像这个示例图: 灰色区域是表面,红色方块是分区本身。 我在想是否有一种优化的方法来做到这一点。 一个非常糟糕的方法是在所有像素中使用for循环并检查是否有特定点的矩形,如果没有,将创建一个矩形,依此类推。 也许有人知道已经完成的算法? 还是更好的解决方案? 非常感谢提前;)

在java中将图像转换为二进制数据(0和1)

我想从URL中读取图像并将其转换为二进制数据。 请帮我.. byte[] data = null; ByteArrayOutputStream bas = null; try { URL u = new URL( “http://sofzh.miximages.com/java/eso0844a.jpg”); HttpURLConnection con1 = (HttpURLConnection) u.openConnection(); con1.setAllowUserInteraction(true); con1.setRequestMethod(“GET”); con1.connect(); InputStream is = con1.getInputStream(); BufferedImage imgToServe = null; if (is != null) { imgToServe = ImageIO.read(is); } bas = new ByteArrayOutputStream(); ImageIO.write(imgToServe, “jpg”, bas); File f = new File(“C:\\img.jpg”); […]

如何显示SVG图形的子部分或“切片”?

有没有办法切片SVG。 我的意思是任何已经可用的lib。 我需要在Java中实现这个切片组件。 我的意思是,我有单个SVG文件和基于标尺/比例我选择图形,我想将单个SVG切成不同的SVG文件。 希望我很清楚

Java中的Perlin Noise问题

所以我试图生成perlin噪音并将其保存到图像文件中。 我已经正确保存了图像,但噪点看起来并不像perlin噪音。 这是我的代码: package com.egs.survivalsim.util; import java.awt.Color; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import com.egs.survivalsim.MainComponent; public class Noise { MainComponent main; public double noise(int x,int y){ x = x + y * 57; x = ((x << 13) ^ x); double t = (x * (x * x * 15731 + 789221) + […]

用Java剪切图像

我正在尝试用Java剪切图像的某个部分并将其保存回磁盘。 是否有一个function可以切割具有指定宽度和高度的X,Y图像?

使用Alpha通道在PNG上叠加透明色

我正在寻找一种用Java绘制PNG图像(带有alpha通道)的方法,该图像是灰度颜色,然后覆盖透明颜色,比如绿色,75%不透明度,在它上面改变颜色。 要清楚,所得到的图像将是在其顶部放置透明色的直接结果,并且不会是任何特殊类型的混合的结果。 例如,我会绘制以下图像: 然后在图像顶部叠加RGB颜色(102,255,0,alpha): 在图像上绘制颜色的方法需要使得它不会干扰屏幕上的其他图像。 这与Adobe Photoshop的颜色叠加function类似。 两个图像可以具有单独的颜色叠加,但是单独的叠加不会相互冲突。 感谢leonbloy,我相信使用“SRC_OVER”的AlphaComposit可以解决这个问题,然后我可以使用一种方法将结果保存为新的BufferedImage,以防止叠加影响屏幕上的任何其他图像对象。 我会在测试时发布结果。

Android java百分比位图两个图像之间的像素差异

我需要在Android上的Java中计算两个图像之间的像素差异。 问题是我的代码返回不准确的结果。 例如,我有3个非常相似的图片,但它们返回显着不同的结果,用于比较每个图片:pic1与pic2 = 1.71%; pic1 vs pic3 = 0.0045%; pic2 vs pic3 = 36.7%。 BitmapFactory.Options opt = new BitmapFactory.Options(); opt.inPreferredConfig = Bitmap.Config.ARGB_8888; opt.inSampleSize = 5; Bitmap mBitmap1 = BitmapFactory.decodeFile(“/sdcard/pic1.jpg”, opt); Bitmap mBitmap2 = BitmapFactory.decodeFile(“/sdcard/pic2.jpg”, opt); int intColor1 = 0; int intColor2 = 0; for (int x = 0; x < mBitmap1.getWidth(); x++) { for […]

如何将像素转换为灰度?

好吧,我正在使用Processing ,它允许我以int[]访问任何图像的像素。 我现在想要做的是将图像转换为灰度。 每个像素的结构如下所示: ………..PIXEL………… [red | green | blue | alpha] 现在,我需要将哪些变换应用于单个RGB值以使图像成为灰度? 我的意思是,我添加/减少多少使图像灰度化? 更新 我在这里找到了一些方法: http : //www.johndcook.com/blog/2009/08/24/algorithms-convert-color-grayscale/