d
dmitry.maslov26 ноября 2018 г. 17:40

Убрать помехи бинарное изображение

c++, qt, image

Превращаю изображение в бинарное(черно-белое):

image = image.convertToFormat(QImage::Format_Mono);

Получается вот такое изображение, с помехами:

А необходимо, что получилось примерно вот такое:

Как убрать помехи, желательно без сторонних библиотек? (opencv и т.п.)






Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.

Вам это нравится? Поделитесь в социальных сетях!

3
Docent
  • 26 ноября 2018 г. 18:58

В матлабе есть следующие функции


rgb2gray - ну из названия понятно, смысл примерно следующий, для каждого пикселя ищем его ч/б интенсивнось

QRgb pix = MyFrame.pixel(X,Y)
R = ((double)((pix & 0x00ff0000) >> 16) * 0.2989);
G = ((double)((pix & 0x0000ff00) >> 8) * 0.5870);
B = ((double)(pix & 0x000000ff) * 0.114);
temp = (R + G + B);

там используются константы по интенсивности Rc=0.2989, Gc= 0.5870, Bc=0.114 вносимой при переводе RGB в Grayscale...

и еще одна функция - бинаризация изображения по уровню интенсивности im2bw (изобр, интенсивность), все что меньше черное, все что больше белое

делаем так же для каждого пикселя

if (temp >=value){
    binaryData[i][j] = 1;
}else {
    binaryData[i][j] = 0;
}
если есть другие готовые решения делитесь


    d
    • 26 ноября 2018 г. 19:19

    А если изначально изображение в градациях серого?

      Docent
      • 27 ноября 2018 г. 3:23

      Надо посмотреть что за формат пикселя в таком случае, но смысл не сильно изменится. Есть оригинальное изображение?

        Комментарии

        Только авторизованные пользователи могут публиковать комментарии.
        Пожалуйста, авторизуйтесь или зарегистрируйтесь
        AD

        C++ - Тест 004. Указатели, Массивы и Циклы

        • Результат:50баллов,
        • Очки рейтинга-4
        m
        • molni99
        • 26 октября 2024 г. 11:37

        C++ - Тест 004. Указатели, Массивы и Циклы

        • Результат:80баллов,
        • Очки рейтинга4
        m
        • molni99
        • 26 октября 2024 г. 11:29

        C++ - Тест 004. Указатели, Массивы и Циклы

        • Результат:20баллов,
        • Очки рейтинга-10
        Последние комментарии
        i
        innorwall15 ноября 2024 г. 8:26
        Qt/C++ - Урок 031. QCustomPlot - строим график по времени buy generic priligy We can just chat, and we will not lose too much time anyway
        i
        innorwall15 ноября 2024 г. 6:03
        Qt/C++ - Урок 060. Настройка внешнего вида приложения в рантайме I didnt have an issue work colors priligy dapoxetine 60mg revia cost uk August 3, 2022 Reply
        i
        innorwall14 ноября 2024 г. 22:42
        Как Копировать Файлы в Linux If only females relatives with DZ offspring were considered these percentages were 23 order priligy online uk
        i
        innorwall14 ноября 2024 г. 20:09
        Qt/C++ - Урок 068. Hello World с использованием системы сборки CMAKE в CLion ditropan pristiq dosing With the Yankees leading, 4 3, Rivera jogged in from the bullpen to a standing ovation as he prepared for his final appearance in Chicago buy priligy pakistan
        Сейчас обсуждают на форуме
        i
        innorwall14 ноября 2024 г. 14:39
        добавить qlineseries в функции priligy amazon canada 93 GREB1 protein GREB1 AB011147 6
        i
        innorwall11 ноября 2024 г. 21:55
        Всё ещё разбираюсь с кешем. priligy walgreens levitra dulcolax carbs The third ring was found to be made up of ultra relativistic electrons, which are also present in both the outer and inner rings
        9
        9Anonim25 октября 2024 г. 19:10
        Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…
        ИМ
        Игорь Максимов3 октября 2024 г. 14:05
        Реализация навигации по разделам Спасибо Евгений!

        Следите за нами в социальных сетях