Wie konvertiere ich Bitmap in Bleistiftskizze in Android?

Ich entwickle eine Bildbearbeitungs-App für Android. Dazu muss ich mein Bild in eine Bleistiftskizze umwandeln.

Kannst du mir bitte helfen?

  • Überspringen einer Zeile in der Listenansicht
  • Android - rechts abbiegen | Gestenerkennung
  • Mehrere Benachrichtigungen mit einem Statusleisten-Symbol in Android
  • So ändern Sie die Werte in der gemeinsamen Präferenz
  • Schneiden von Inhalt in TextView
  • So erstellen Sie ImageView Puls-Effekt mit neun alten Androids Animation
  • Wo ist cordova-2.7.0.jar?
  • Android entwickeln LCD-Schriftart
  • Wie man ein DialogFragment mit RxJava verwaltet?
  • Läuft ndk-stack auf arm64-v8a lib fehl mit fehler Dateiformat nicht erkannt
  • Wie kann ich dynamisch eine Liste aller Android ui Komponenten programmgesteuert erstellen? ZB TextView, ImageView etc
  • Android-x86 wird nicht auf VirtualBox installiert
  • 2 Solutions collect form web for “Wie konvertiere ich Bitmap in Bleistiftskizze in Android?”

    Sie benötigen eine Bildverarbeitungsbibliothek, um das zu tun.
    Du kannst ImageJ oder Marvin probieren.

    Für weitere Informationen, können Sie diese SO Post: Was ist die beste Java-Bildverarbeitung Bibliothek / Ansatz?

    Um das Bild in Bleistiftskizze zu konvertieren, musst du 3 Filter anwenden

    1. GRAYSCALE FILTER

    2. INFORT DIE FARBEN

    3. GAUSSISCHES BLUR

    Nach erfolgreichem Anwenden dieser Filter verwenden colordodgeblend Funktion, um Bleistift wie Skizze zu machen

    Graustufenfilter

    ColorMatrix matrix = new ColorMatrix(); matrix.setSaturation(0); ColorMatrixColorFilter filter = new ColorMatrixColorFilter(matrix); imgView.setColorFilter(filter); 

    CODE ZUR ANWENDUNG INVERT FILTER

     float[] colorMatrix_Negative = { -1.0f, 0, 0, 0, 255, //red 0, -1.0f, 0, 0, 255, //green 0, 0, -1.0f, 0, 255, //blue 0, 0, 0, 1.0f, 0 //alpha}; ColorMatrix colorMatrix = new ColorMatrix(); colorMatrix.set(colorMatrix_Negative); ColorFilter colorFilter_Negative = new ColorMatrixColorFilter(colorMatrix_Negative); 

    CODE FÜR GAUSSISCHES BLUR

     public static Bitmap applyGaussianBlur(Bitmap src) { double[][] GaussianBlurConfig = new double[][]{ {-1, 0, -1}, {0, 4, 0}, {-1, 0, -1} }; ConvolutionMatrix convMatrix = new ConvolutionMatrix(3); convMatrix.applyConfig(GaussianBlurConfig); convMatrix.Factor = 1; convMatrix.Offset = 150; //return out put bitmap return ConvolutionMatrix.computeConvolution3x3(src, convMatrix); } 

    Für mehr Referenz

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.