私は画像のセットを持っています。画像は単純な背景を持っています。 Marvin FrameworkとJavaを使用して、その背景を白に変更したいと思います。イメージの背景を白に変更するにはどうすればいいですか?
私はマーヴィンを初めて知っているので、バックグラウンドを変更するのが面倒です。私もJavaのopencvを試しましたが、満足していないリンクエラーが発生しました。
画像例:
私は画像のセットを持っています。画像は単純な背景を持っています。 Marvin FrameworkとJavaを使用して、その背景を白に変更したいと思います。イメージの背景を白に変更するにはどうすればいいですか?
私はマーヴィンを初めて知っているので、バックグラウンドを変更するのが面倒です。私もJavaのopencvを試しましたが、満足していないリンクエラーが発生しました。
画像例:
あなたが影を削除する方法を見つける必要があります完璧な結果を得るために。しかし、私はそれがあなたのための良い出発点だと思う。
アルゴリズム:
出力:
ソースコード:
import static marvin.MarvinPluginCollection.*;
public class RemoveBackground {
public RemoveBackground(){
MarvinImage image = MarvinImageIO.loadImage("./res/shoes.jpg");
MarvinImage bin = MarvinColorModelConverter.rgbToBinary(image, 116);
morphologicalDilation(bin.clone(), bin, MarvinMath.getTrueMatrix(5, 5));
MarvinImage mask = MarvinColorModelConverter.binaryToRgb(bin);
boundaryFill(mask.clone(), mask, 5, 5, new Color(255,0,255));
for(int y=0; y<mask.getHeight(); y++){
for(int x=0; x<mask.getWidth(); x++){
if(mask.getIntColor(x, y) == 0xFFFF00FF){
image.setIntColor(x, y, 255,255,255);
}
}
}
MarvinImageIO.saveImage(image, "./res/shoes_out.jpg");
}
public static void main(String[] args) {
new RemoveBackground();
System.exit(0);
}
}
スレッド "main"の例外java.lang.ClassCastException:java.awt.Colorをjava.lang.Integerにキャストできません - プログラム実行中にエラーが発生しました – user1910287
このjarファイルを使用して解決できましたこの[jarファイル](http://marvinproject.sourceforge.net/files/org.marvinproject)を使用して[google groups](https://groups.google.com/forum/#!topic/marvin-project/9ZgLtsjtkpc) image.fill.boundaryFill.jar) – kukkuz
これは正確に言ったように動作します... marvinと簡単にやりました。私たちはmarvinの設定を簡単にするつもりです – anshulkatta
あなたの質問は、あなたが[このガイド]以下で、それを編集します、理解することは少し難しいです( http://stackoverflow.com/tour)? – alariva
グラフィックエディタでは、マジックのラッソまたはワンドを使用し、背景を選択して塗りつぶします。または、洪水の色の差のある閾値を埋める。そのすばらしいプロジェクトを一目瞭然に私はそのようなものは見ませんでした。 –