Простой алгоритм повышения резкости изображения для приложения Android - PullRequest
1 голос
/ 01 февраля 2010

Я ищу простой алгоритм повышения резкости изображения для моего приложения Android. У меня есть изображение в градациях серого, снятое с видео (в основном используется для текста), и я хотел бы сделать его более четким, потому что мой телефон не имеет автофокуса, а расстояние до объекта размывает текст. У меня нет никакого фона в обработке изображений. Но, как пользователь, я знаком с инструментами нечеткой маскировки и другими инструментами повышения резкости, доступными в Gimp, Photoshop и т. Д. Я не видел никакой поддержки обработки изображений в Android API, и, следовательно, ищу способ реализовать себя. Благодарю.

Ответы [ 3 ]

1 голос
/ 18 июля 2014

Это простой алгоритм повышения резкости изображения.

Вам следует перейти к этой функции width, height и byte [] массива вашего изображения в градациях серого, и он будет резче в этом байте [].

void sharpen(int width, int height, byte* yuv) {

    char *mas;
    mas = (char *) malloc(width * height);
    memcpy(mas, yuv, width * height);

    signed int res;

    int ywidth;

    for (int y = 1; y < height - 1; y++) {
        ywidth = y * width;
        for (int x = 1; x < width - 1; x++) {
            res = (
                      mas[x + ywidth] * 5
                    - mas[x - 1 + ywidth]
                    - mas[x + 1 + ywidth]
                    - mas[x + (ywidth + width)]
                    - mas[x + (ywidth - width)]

                    );
            if (res > 255) {
                res = 255;
            };
            if (res < 0) {
                res = 0;
            };

            yuv[x + ywidth] = res;

        }
    }
    free(mas);
}
0 голосов
/ 01 февраля 2010

Если у вас есть доступ к информации о пикселях, ваш самый базовый вариант - заострение ядра свертки. Взгляните на следующие сайты, вы можете узнать больше о заточке ядер и о том, как применять там ядра.

link1
link2

0 голосов
/ 01 февраля 2010

ImageJ имеет множество алгоритмов на Java и находится в свободном доступе.

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