import java.util.*;
import org.im4java.core.*;
import org.im4java.process.*;
// im4java-0.97.0-bin.tar.bz2を解凍してim4java-0.97.0.jarはclasspathに通す
public class Im4java20
{
public static void main(String args[])
throws Exception
{
try
{
// ConvertCmd convert = new ConvertCmd();
ImageCommand convert = new WindowsConvertCmd();
IMOperation op = new IMOperation();
op.addImage("sf.jpg");
op.addImage("histogram:sample1086a.png");
convert.run(op);
op = new IMOperation();
op.addImage("sf.jpg");
op.channel("b");
op.addImage("histogram:sample1086b.png");
convert.run(op);
}
catch(CommandException cex)
{
System.out.println(cex.getErrorText());
cex.printStackTrace();
}
}
// im4java 0.97
static class WindowsConvertCmd extends ImageCommand
{
public WindowsConvertCmd()
{
setCommand("cmd");
setCommand("/c");
setCommand("convert");
/* another way
setCommand("C:\\Program Files\\ImageMagick-6.4.9-Q16\\convert");
*/
}
}
}
元画像(sf.jpg)
出力画像1(sample1086a.png):RGBヒストグラム
出力画像2(sample1086b.png):青チャンネルのヒストグラム
関連情報
im4javaのまとめ
ImageMagickで、画像のヒストグラムを生成する (convertコマンドでの同様の処理)
これをim4java-0.97.0-bin.tar.bz2を使わずに
ReplyDelete普通にjavaで動かせれるようなソースをお願いいたします