соответствие цветов в изображениях - PullRequest
3 голосов
/ 07 июля 2019

У меня есть два изображения (среза), которые были сделаны двумя датчиками камеры, чтобы закончить одно изображение.Однако из-за некоторых различий в производительности датчиков их цвет / тон различаются, и мне необходимо сопоставить их, чтобы создать одно унифицированное изображение.

Я использовал функцию HistogramMatcher, которая включена в Фиджи (Изображение J) объяснил здесь , чтобы соответствовать цветам второго изображения как первого.Это дает приемлемый результат, но все еще требует дальнейшей обработки.

Итак, мой вопрос, каковы наилучшие подходы для создания единого изображения.я должен начать с яркости, затем оттенок насыщенности?Также есть ли другая функция, кроме «HistogramMatcher», чтобы соответствовать цветам?

ниже приведен пример изображения

enter image description here

Ответы [ 2 ]

3 голосов
/ 09 июля 2019

Я разделил ваше изображение на две части следующим образом, затем использовал функцию согласования гистограммы scikit-image:

enter image description here enter image description here

#!/usr/bin/env python3

import numpy as np
from skimage.io import imread, imsave
from skimage import exposure
from skimage.transform import match_histograms

# Load left and right images
L = imread('rocksA.png')
R = imread('rocksB.png')

# Match using the right side as reference
matched = match_histograms(L, R, multichannel=True)

# Place side-by-side and save
result = np.hstack((matched,R))
imsave('result.png',result)

Это дает следующий результат:

enter image description here

Ключевые слова : Python, обработка изображений, обработка изображений, подбор цветов,сопоставление цветов, сопоставление гистограммы, сопоставление гистограммы, изображение scikit, изображение лыжи.

2 голосов
/ 09 июля 2019

Для сравнения, у меня есть два сценария оболочки bash Imagemagick, которые передают цвет от одного изображения к другому. (см. http://www.fmwconcepts.com/imagemagick/index.php). Один выполняет сопоставление цветовой гистограммы, а другой выполняет регулировку цвета путем сопоставления среднего и стандартного отклонения (то есть яркости и контрастности).

Я буду использовать разделенные изображения Марка Сетчелла.

Input

enter image description here enter image description here

Соответствие гистограммы:

histmatch -c rgb right.png left.png newleft_histmatch.png

convert newleft_histmatch.png right.png +append result_histmatch.png


enter image description here

Среднее / Стандартное соответствие:

matchimage -c rgb left.png right.png newleft_matchimage.png

convert newleft_matchimage.png right.png +append result_matchimage.png


enter image description here

Для решения Python / OpenCV для передачи цвета с использованием среднего и стандартного отклонения см. https://www.pyimagesearch.com/2014/06/30/super-fast-color-transfer-images/

...