Как я могу воспроизвести инструмент GIMP «Выбор по цвету» в Python и экспортировать координаты пикселей в CSV?Python

Программы на Python
Anonymous
Как я могу воспроизвести инструмент GIMP «Выбор по цвету» в Python и экспортировать координаты пикселей в CSV?

Сообщение Anonymous »

После этого поста я пытаюсь воспроизвести функциональность инструмента GIMP «Выбрать > По цвету» в Python.

[img]https:// i.sstatic.net/48H7lBLj.png[/img]

Этот инструмент позволяет пользователям выбирать области изображения на основе цветовой чувствительности (т. е. порогового значения ), и я хочу добиться того же результата программно.

Изображение

В частности, мне нужно выбрать пиксели определенного цвета с заданной чувствительностью и экспортировать координаты x-y этих выбранных пикселей в файл CSV (пример изображения здесь) ).
Я пробовал использовать OpenCV со следующим скриптом:

Код: Выделить всё

import cv2
import numpy as np
import csv

# Load the image
image = cv2.imread('image.jpg')

# Convert the image from BGR to HSV color space
hsv_image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)

# Define the color range to select (in HSV)
lower_color = np.array([0, 100, 100])  # Example values, adjust as needed
upper_color = np.array([10, 255, 255])  # Example values, adjust as needed

# Create a mask based on the color range
mask = cv2.inRange(hsv_image, lower_color, upper_color)

# Find the coordinates of the selected pixels
selected_pixels = np.argwhere(mask)

# Save the coordinates to a CSV file
with open('selected_pixels.csv', 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow(['x', 'y'])  # Write the header
writer.writerows(selected_pixels)  # Write the coordinates

print("Selected pixel coordinates saved to 'selected_pixels.csv'")
Хотя этот подход работает для выбора определенного диапазона цветов в цветовом пространстве HSV, он не обеспечивает такой же уровень гибкости и точности, как инструмент GIMP «Выбрать по цвету», который использует порог чувствительности для выбора регионов.

Что мне нужно:

  • Метод выбора пикселей на основе цветовой чувствительности , аналогичный инструменту GIMP.
  • Экспортируйте координаты выбранных пикселей в файл CSV.

Вопросы:

  • Как я могу изменить свой текущий подход или использовать другой метод, чтобы добиться той же функциональности, что и инструмент GIMP «Выбрать по цвету»?
  • Есть ли в Python какие-либо конкретные библиотеки или методы, которые могут в этом помочь?

Дополнительная информация:

  • Я готов использовать такие библиотеки, как OpenCV, Pillow или любые другие рекомендуемые инструменты.
  • Мне нужно выбирать цвета с определенным порогом (допуском) а не только определенные цветовые диапазоны.


Подробнее здесь: https://stackoverflow.com/questions/785 ... -pixel-coo

Вернуться в «Python»