画像処理のタグがつけられたコード一覧

Java RGBによる2値化その2

/* 2値化のしきい値 */
public static final double THRESHOLD = 128;

/* 2値化のサンプル */
private static void doProcess() {
	for (int x = 0; x < image.getWidth(); x++) {
		for (int y = 0; y < image.getHeight(); y++) {
			int rgb = image.getRGB(x, y);
				double rgbAverage = getRGBAverage(rgb);
			if (rgbAverage <= THRESHOLD) {
				image.setRGB(x, y, 0x00000000); //しきい値より小さければ黒
			} else {
				image.setRGB(x, y, 0x00FFFFFF); //しきい値以上なら白
			}
		}
	}
}

/* rgb各成分の平均値 */
private static double getRGBAverage(int rgb) {
	int r = (rgb & 0x00FF0000) >> 16;
	int g = (rgb & 0x0000FF00) >> 8;
	int b = (rgb & 0x000000FF);

	return (r + g + b) / 3.0;
}

Java RGB平均値による2値化

/* 2値化のしきい値 */
public static final double THRESHOLD = 255 / 2.0;

/* 2値化のサンプル */
private static void doProcess() {
	for (int x = 0; x < image.getWidth(); x++) {
		for (int y = 0; y < image.getHeight(); y++) {
			int rgb = image.getRGB(x, y);
			double rgbAverage = getRGBAverage(rgb);

			if (rgbAverage <= THRESHOLD) {
				image.setRGB(x, y, 0x00FFFFFF); //しきい値以下なら白
			} else {
				image.setRGB(x, y, 0x00000000); //しきい値より大きければ黒
			}
		}
	}
}

/* rgb各成分の平均値 */
private static double getRGBAverage(int rgb) {
	int r = (rgb & 0x00FF0000) >> 16;
	int g = (rgb & 0x0000FF00) >> 8;
	int b = (rgb & 0x000000FF);

	return (r + g + b) / 3.0;
}

Java 画像処理テンプレート

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;

public class 画像処理 {

	// 入力ファイル
	public static final String INPUT = "data/input.jpg";
	// 出力ファイル
	public static final String OUTPUT = "data/output.jpg";

	// 操作用画象
	private static BufferedImage image;

	public static void main(String[] args) {
		loadImage();
		doProcess();
		saveImage();
	}

	/**
	 * 画象処理
	 */
	private static void doProcess() {
		// ここで画像処理をする
	}

	/**
	 * 画像の読み込み
	 */
	private static void loadImage() {
		try {
			image = ImageIO.read(new File(INPUT));
		} catch (Exception e) {
			e.printStackTrace();
			System.exit(1);
		}

	}

	/**
	 * 画像書き込み
	 */
	private static void saveImage() {
		try {
			ImageIO.write(image, "jpg", new File(OUTPUT));
		} catch (IOException e) {
			e.printStackTrace();
			System.exit(1);
		}
	}
}

よく投稿されているコード

タグ

最近投稿されたコード