我编写了一个镜像程序,但是下面的代码给出了一个错误:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException:
Coordinate out of bounds!
at sun.awt.image.ByteInterleavedRaster.setDataElements(Unknown Source)
at java.awt.image.BufferedImage.setRGB(Unknown Source)
at algoritm.MirrorImage.applyAlgoritm(Mirro
我正在尝试将图像转换为矩阵并将其转换回来,但这2幅图片是不同的:将其转换为矩阵:
public int[][] getMatrixOfImage(BufferedImage bufferedImage) {
int width = bufferedImage.getWidth(null);
int height = bufferedImage.getHeight(null);
int[][] pixels = new int[width][height];
for (int i = 0; i < width; i++) {
for (in
下面有一个代码构造了一个名为BufferedImage的bufferedImage对象,它是2D的:
BufferedImage bufferedImage = new BufferedImage(121, 400,BufferedImage.TYPE_INT_RGB);
bufferedImage.setRGB(a, b, Pixel);
我需要通过创建ImageComponent3D对象来为这个图像添加一个深度或第三个维度。为了构造它的一个对象,我们可以声明如下:
ImageComponent3D ic = new ImageComponent3D(int format, **java.a
我一直在为Java语言中的BufferedImage类创建一个类似于画桶工具的函数。它使用递归来执行填充。遗憾的是,当我执行代码时,它会给我一个java.lang.StackOverflowError。我还发现它无法识别BaseColor,因为当我使用System.out.println检查BaseColor的“红色”通道时,它给了我一个零,而应该是255。(颜色是白色。)代码如下:
public static void BufferedImageFill(BufferedImage bufferedImage, int FillX, int FillY, int FillRed, int F
我看过许多教程,但似乎都不起作用。我不明白当从导出的jar运行时,我需要进行哪些更改才能加载图像。当我运行jar时,我得到一个空白的JFrame。
下面是一些相关的代码。如果需要,我可以添加更多:
Main:
package dev.darokrithia.packer;
import java.io.InputStream;
public class Main {
// Class.getResourceAsStream
public static InputStream packer = Main.class.getResourceAsStream("nes
我在编写另一个项目时遇到了这个问题,但我已经将代码简化到了直接受上述问题影响的程度。
EntryPoint.java
package replaced.with.real.package.in.code.at.compile.time;
import java.awt.image.BufferedImage;
import java.util.Random;
public class EntryPoint {
public static void main(String[] args) {
BufferedImage a = new BufferedImage(1
我在另外三个BufferedImage中分离出我的图像的颜色,当我再次把它们放在一起时,我只得到了蓝色。当我测试红色图像时,我发现它也是蓝色的,与绿色完全一样。这是我的密码。
public void modifyImage(BufferedImage image) {
BufferedImage green = new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_INT_RGB);
BufferedImage blue = new BufferedImage(image.getWid
我有一个父类Tile和继承的类Walltile、FloorTile、EntityTile。每个继承的类都有与其名称相关的BufferedImage属性。
public class WallTile extends Tile {
public static BufferedImage WATER_TOP_LEFT = Game.tilesSpritesheet.getSprite(34, 0);
public static BufferedImage WATER_TOP = Game.tilesSpritesheet.getSprite(51, 0);
public static Buffer
我正在尝试使用以下代码扩展java.awt.image.BufferedImage:
import java.awt.image.BufferedImage;
public class FSImage extends BufferedImage {
public FSImage() {
// empty constructor
}
}
但是,我得到了一些错误:
no suitable constructor found for BufferedImage()
constructor java.awt.image.BufferedImage.BufferedI
有没有一种用alpha创建24位BufferedImage的方法?
我使用BufferedImage bi =新的BufferedImage(100,100,BufferedImage.TYPE_INT_ARGB),并且在文档中没有为带有alpha类型的24位BufferedImage找到合适的密钥。
我创建了一个java web应用程序。其中我创建了一个程序来调整和上传照片。它存储在特定的文件夹中。当我更改照片时,它不会改变,仍然是旧的照片。但在重启TomCat之后,我可以更改照片。为什么会发生这种情况?下面是调整图像大小和存储图像的代码
public static int createThumbnailNew(String original,
String resized, int maxSize) {
try
{
File originalFile = new File(original);
我有一个BufferedImage,我试图用透明像素填充一个矩形。问题是,透明像素不是替换原来的像素,而是放在顶部,什么也不做。我怎样才能完全摆脱原来的像素?该代码适用于任何其他不透明的颜色。
public static BufferedImage[] slice(BufferedImage img, int slices) {
BufferedImage[] ret = new BufferedImage[slices];
for (int i = 0; i < slices; i++) {
ret[i] = copyImage(img);
我正在尝试绘制一个接受bufferedImage的方法,使其成为半透明的,然后返回结果bufferedImage。从那里我可以稍后再画它。然而,我的代码无法绘制任何内容。我觉得我快到了..。
public BufferedImage ApplyTransparency(BufferedImage image)
{
BufferedImage dest = new BufferedImage(overlay1.getWidth(), overlay1.getHeight(),
BufferedImage.TYPE_INT_ARGB);
Graphics2
我有这个源代码,它可以在Mat中为OpenCv打开图像,然后做一些操作,然后bufferedImage将它转换成图像,这样就可以在JFrame中显示。但我想不出如何传递论据。
public class objectDetection{
public void getMatImg(){
Mat imageInMat = Imgcodecs.imread(getClass().getResource("lena.png").getPath());
}
/*
*
* OpenCV code
*/
我想在一个助手类中收集我多年来编写的一些图像处理方法。我只想找出如何使用以BufferedImage作为参数并将一个(可能很酷的处理过的) BufferedImage返回给调用者的方法是最有效的。当我在这里查看堆栈溢出或打开项目中的代码示例时,我看到了许多处理BufferedImages的不同方法。我通常
public BufferedImage doCoolStuff(BufferedImage sourceImage) {
BufferedImage tmpImage = new BufferedImage(w,h,Type);
tmpImage = pro
我怀疑这里的解决方案可能真的很简单,但我被难住了……
// Create the buffered image.
BufferedImage bufferedImage = new BufferedImage(w,h,BufferedImage.TYPE_INT_RGB);
// fill image data (works fine)
ImageIO.write(bufferedImage, "JPG", f1); // works fine
ImageIO.write(bufferedImage, "PNG", f2); // works fine
Ima
我使用它来与BufferedImage进行比较。
private boolean compareImages(BufferedImage actualImage, BufferedImage expectedImage) {
for (int x = 0; x < expectedImage.getWidth(); x++) {
for (int y = 0; y < expectedImage.getHeight();y++) {
if (actualImage.getRGB(x, y) != expectedImage.getRG
对于学校作业,我们必须对噪声的PNG图像应用中值滤波器。我有以下几点:
public static void main(String[] a) throws Throwable {
final String extension = "png";
final String input = "input1.png";
final String output = "output1.png";
final int threadsAmount = 4;
long startTime = System.curren
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Coordinate out of bounds!
at sun.awt.image.IntegerInterleavedRaster.setDataElements(IntegerInterleavedRaster.java:301)
at java.awt.image.BufferedImage.setRGB(BufferedImage.java:988)
at MyManager.imageMan.fazerNo