Как преобразовать растровое изображение в карандашный набросок в Android? - PullRequest
9 голосов
/ 26 декабря 2011

Я занимаюсь разработкой приложения для редактирования изображений для Android. Для этого мне нужно преобразовать мое изображение в карандашный набросок.

Не могли бы вы помочь мне в этом.

Ответы [ 2 ]

4 голосов
/ 26 декабря 2011

Для этого требуется библиотека для обработки изображений.
Вы можете попробовать ImageJ или Марвин .

Для получения дополнительной информации вы можете обратиться к этой публикации SO: Какая библиотека / метод обработки изображений Java является лучшей?

0 голосов
/ 13 декабря 2015

Чтобы преобразовать изображение в карандашный набросок, вам необходимо применить 3 фильтра

  1. СЕРЫЙ ФИЛЬТР

  2. ОБРАТИТЬЦВЕТА

  3. GAUSSIAN BLUR

после успешного применения этих фильтров используйте функцию colordodgeblend, чтобы сделать карандаш как эскиз

Оттенки серогофильтр

ColorMatrix matrix = new ColorMatrix();
matrix.setSaturation(0);

ColorMatrixColorFilter filter = new ColorMatrixColorFilter(matrix);
imgView.setColorFilter(filter);

КОД ДЛЯ ПРИМЕНЕНИЯ 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);

КОД ДЛЯ GAUSSIAN 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);
}

для дополнительной информации

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...