Поиск пикселей определённой насыщенности

Простейшие вопросы в области инженерной разработки
Endeavour
junior
junior
Сообщения: 55
Зарегистрирован: 30 июл 2012, 16:00
Версия LabVIEW: 2011 & 8.0

Поиск пикселей определённой насыщенности

Сообщение Endeavour »

Здравствуйте,

имею задачу посчитать пиксели определенной насыщенности. В конечном счете картинки будут в Gayscale 8bit, но пока я тестирую программку в пространстве RGB с цветными файлами. К сожалению, так и не разобрался как работает чтение и картирование избражения, в моём случае Bitmap 8 bit. В приложенном VI (LabView 2018 64bit) я надеялся, что будут считаться любые пиксели заданной насыщенности и красные, и зелёные, и синии, и серые. Но этого не происходит. Считаются лишь серые (в примере - белые). Прошу меня поправить или посоветовать другое решение. Заранее благодарю!
Вложения
PictureAnalysis_v1_LV2018_64bit.zip
(49.19 КБ) 38 скачиваний
Artem.spb

Activity Автор
professor
professor
Сообщения: 3393
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Поиск пикселей определённой насыщенности

Сообщение Artem.spb »

Главная ошибка - анализ 8-битного (indexed color) изображения с помощью 24-битного алгоритма.
img.PNG
img.PNG (4.46 КБ) 1980 просмотров
У вас на входе ожидается u32 (i32, но это ошибка), а подаёте u8. Отсюда и некорректная работа алгоритма.
Для начала определитесь, вы берёте 8-юитные изображения (и надо менять алгоритм), или измените изображения на 24-юитные.
Endeavour
junior
junior
Сообщения: 55
Зарегистрирован: 30 июл 2012, 16:00
Версия LabVIEW: 2011 & 8.0

Re: Поиск пикселей определённой насыщенности

Сообщение Endeavour »

Спасибо за разъяснение! Я внес поправки на вход и выход Color to RGB, но изменений в подсчете пикселей так и не добился. Пока считаются лишь белые точки.
Вложения
Clipboard05.png
Clipboard05.png (8.02 КБ) 1976 просмотров
Artem.spb

Activity Автор
professor
professor
Сообщения: 3393
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Поиск пикселей определённой насыщенности

Сообщение Artem.spb »

Endeavour писал(а): 23 июл 2022, 20:36 Спасибо за разъяснение! Я внес поправки на вход и выход Color to RGB, но изменений в подсчете пикселей так и не добился. Пока считаются лишь белые точки.
Если это всё, что вы сделали, то по сути вы ничего и не сделали, и так и не ответили на главный вопрос: алгоритм, или изображение?
Endeavour
junior
junior
Сообщения: 55
Зарегистрирован: 30 июл 2012, 16:00
Версия LabVIEW: 2011 & 8.0

Re: Поиск пикселей определённой насыщенности

Сообщение Endeavour »

Мне нужно считать точки в 8-битных изображениях. Я же упомянул это ещё в начале трэда. Исправил вход на vi, но пользы опять не заметил.
Вложения
Clipboard06.png
Clipboard06.png (1.58 КБ) 1961 просмотр
Artem.spb

Activity Автор
professor
professor
Сообщения: 3393
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Поиск пикселей определённой насыщенности

Сообщение Artem.spb »

Endeavour писал(а): 23 июл 2022, 18:26 Здравствуйте,
имею задачу посчитать пиксели определенной насыщенности.
Что вы называете насыщенностью?
Saturaton в пространстве HSV или банально яркость Gayscale?
В конечном счете картинки будут в Gayscale 8bit, но пока я тестирую программку в пространстве RGB с цветными файлами.
И накой "тренироваться" на задаче которая очень слабо связана с вашей актуальной?
К сожалению, так и не разобрался как работает чтение и картирование избражения, в моём случае Bitmap 8 bit.
Вы для начала разберитесь с типами данных (u8/u32/i32...), потом с устройством изображений (grayscale, indexed, 24-bit...)
imgprocc.png
Endeavour
junior
junior
Сообщения: 55
Зарегистрирован: 30 июл 2012, 16:00
Версия LabVIEW: 2011 & 8.0

Re: Поиск пикселей определённой насыщенности

Сообщение Endeavour »

Что вы называете насыщенностью?
Saturaton в пространстве HSV или банально яркость Gayscale?
1. Для меня это означает, что минимум один из трех компонентов цветной точки будет иметь значение 255 в десятичной системе счисления.
2. Вполне возможно следующим шагом, но для начала я бы хотел наладить получение RGB данных из картинки и операции над ними.
И накой "тренироваться" на задаче которая очень слабо связана с вашей актуальной?
Ввод данных Gayscale и подсчет в пространстве HSV можно будет организовать, когда понадобится. Пока ищу решение подсчета как цветных (по компонентам), так и серых точек в одмом изображении.
Вы для начала разберитесь с типами данных (u8/u32/i32...), потом с устройством изображений (grayscale, indexed, 24-bit...)
Этим я сейчас и занимаюсь, learning by doing.

Благодарю вас за ваше терпение.
Artem.spb

Activity Автор
professor
professor
Сообщения: 3393
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Поиск пикселей определённой насыщенности

Сообщение Artem.spb »

Endeavour писал(а): 23 июл 2022, 23:07 2. Вполне возможно следующим шагом, но для начала я бы хотел наладить получение RGB данных из картинки и операции над ними.
В таком случае вам нужно именно RGB изображение, а не indexed, что можно получить так, как я показал. Ну или сразу брать 48-битный файл.
Endeavour
junior
junior
Сообщения: 55
Зарегистрирован: 30 июл 2012, 16:00
Версия LabVIEW: 2011 & 8.0

Re: Поиск пикселей определённой насыщенности

Сообщение Endeavour »

Благодарю вас, теперь мой код смог посчитать точки (R, G, B, White) корректно.
Вложения
PictureAnalysis_v2_LV2018_64bit.zip
(27.18 КБ) 37 скачиваний
Artem.spb

Activity Автор
professor
professor
Сообщения: 3393
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Поиск пикселей определённой насыщенности

Сообщение Artem.spb »

Зачем культурные u8 переводить в некультурные i32?
В вашей задаче это лишнее
i32.PNG
i32.PNG (3.52 КБ) 1940 просмотров
Endeavour
junior
junior
Сообщения: 55
Зарегистрирован: 30 июл 2012, 16:00
Версия LabVIEW: 2011 & 8.0

Re: Поиск пикселей определённой насыщенности

Сообщение Endeavour »

Для соответсвия типа данных далее в коде, который уже будет перелопачивать директории с изображениями.
Update: Решил, всё же, последовать вашему совету и переопределил типы данных во всей большой программе и её компонентах. Убрал все ненужные пребразователи и поставил один нужный. Спасибо вам за советы!
Аватара пользователя
Integro
beginner
beginner
Сообщения: 44
Зарегистрирован: 04 окт 2009, 16:10
Версия LabVIEW: 14, 18
Откуда: Israel
Поблагодарили: 1 раз

Re: Поиск пикселей определённой насыщенности

Сообщение Integro »

Endeavour писал(а): 24 июл 2022, 02:46 Для соответсвия типа данных далее в коде, который уже будет перелопачивать директории с изображениями.
Update: Решил, всё же, последовать вашему совету и переопределил типы данных во всей большой программе и её компонентах. Убрал все ненужные пребразователи и поставил один нужный. Спасибо вам за советы!
А можно и так:

(Смотреть на 5:38 минуте)
Вложения
screenshot 2022-08-11 001.png
screenshot 2022-08-11 001.png (6.7 КБ) 1773 просмотра
"Coding is not the main event anymore. Building software is the main event."
Chris Wanstrath, Co-Founder, CEO of GitHUB
Endeavour
junior
junior
Сообщения: 55
Зарегистрирован: 30 июл 2012, 16:00
Версия LabVIEW: 2011 & 8.0

Re: Поиск пикселей определённой насыщенности

Сообщение Endeavour »

Увы, я не понял, что вы хотели сказать. О чём вы?
Аватара пользователя
Select
developer
developer
Сообщения: 281
Зарегистрирован: 12 дек 2017, 23:56
Версия LabVIEW: 18
Откуда: Врата надежды.
Поблагодарили: 2 раза

Re: Поиск пикселей определённой насыщенности

Сообщение Select »

Endeavour писал(а): 20 авг 2022, 18:20 Увы, я не понял, что вы хотели сказать. О чём вы?
Если Вы посмотрели фрагмент лекции с демонстрацией Вашей задачи, то вопросов вроде бы не должно возникать.
Пример демонстрирует не просто дает идентификацию определенных цветовых полутонов нужного цвета, но и опознает объект по форме заданного региона из такого набора пикселей.
LabView 14,18
Endeavour
junior
junior
Сообщения: 55
Зарегистрирован: 30 июл 2012, 16:00
Версия LabVIEW: 2011 & 8.0

Re: Поиск пикселей определённой насыщенности

Сообщение Endeavour »

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

Вернуться в «Для чайников»