एक इमेज को एक कलर स्पेस से दूसरे में बदलना आमतौर पर इसलिए किया जाता है ताकि नया प्राप्त कलर स्पेस अन्य ऑपरेशन करने के लिए बेहतर इनपुट साबित हो सके। इसमें ह्यू (hue), ल्युमिनोसिटी (luminosity), सैचुरेशन लेवल (saturation levels) को अलग करना शामिल है।
जब एक इमेज को RGB प्रतिनिधित्व का उपयोग करके दर्शाया जाता है, तो ह्यू और ल्युमिनोसिटी विशेषताओं को चैनल R, G और B के रैखिक संयोजन के रूप में दिखाया जाता है।
जब एक इमेज HSV प्रतिनिधित्व का उपयोग करके दर्शाई जाती है (यहां H ह्यू को दर्शाता है और V वैल्यू को दर्शाता है), तो RGB को एकल चैनल माना जाता है।
यहां RGB कलर स्पेस को HSV में बदलने का उदाहरण है।
उदाहरण
import matplotlib.pyplot as plt
from skimage import data
from skimage.color import rgb2hsv
import skimage.io as io
path = "path to puppy_1.JPG"
img = io.imread(path)
rgb_img = img
hsv_img = rgb2hsv(rgb_img)
value_img = hsv_img[:, :, 2]
fig, (ax0, ax1) = plt.subplots(ncols=2, figsize=(8, 2))
ax0.imshow(rgb_img)
ax0.set_title("Original image")
ax0.axis('off')
ax1.imshow(value_img)
ax1.set_title("Image converted to HSV channel")
ax1.axis('off')
fig.tight_layout()आउटपुट

व्याख्या
- आवश्यक लाइब्रेरी आयात की जाती हैं।
- वह पथ परिभाषित किया जाता है जहां इमेज स्टोर है।
- 'imread' फंक्शन का उपयोग पथ पर जाकर इमेज पढ़ने के लिए किया जाता है।
- 'imshow' फंक्शन का उपयोग कंसोल पर इमेज प्रदर्शित करने के लिए किया जाता है।
- 'rgb2hsv' फंक्शन का उपयोग इमेज को RGB कलर स्पेस से HSV कलर स्पेस में बदलने के लिए किया जाता है।
- matplotlib लाइब्रेरी का उपयोग इस डेटा को प्लॉट करने के लिए किया जाता है, और मूल इमेज और HSV कलर स्पेस में बदली गई इमेज को दिखाया जाता है।
- यह कंसोल पर प्रदर्शित होता है।