Scikit-learn, जिसे आमतौर पर sklearn के नाम से जाना जाता है, पायथन में एक लाइब्रेरी है जिसका उपयोग मशीन लर्निंग एल्गोरिदम को लागू करने के लिए किया जाता है।
एक इमेज को एक कलर स्पेस से दूसरे में बदलना आमतौर पर इसलिए किया जाता है ताकि नया प्राप्त कलर स्पेस अन्य ऑपरेशन करने के लिए बेहतर इनपुट साबित हो सके। इसमें ह्यू (hue), ल्युमिनोसिटी (luminosity), सैचुरेशन लेवल (saturation levels) को अलग करना शामिल है। जब एक इमेज को RGB प्रतिनिधित्व का उपयोग करके दर्शाया जाता है, तो ह्यू और ल्युमिनोसिटी विशेषताओं को चैनल R, G और B के रैखिक संयोजन के रूप में दिखाया जाता है।
जब RGB कलर स्पेस वाली इमेज को ग्रेस्केल में बदलने की कोशिश की जाती है, तो पिक्सेल मानों की गणना लाल, हरे और नीले पिक्सेल के भारित योग के रूप में की जाती है। समीकरण नीचे दिखाया गया है:
Y = 0.2125 R + 0.7154 G + 0.0721 B
ये वेट विशेष रूप से प्रदान किए जाते हैं, क्योंकि वे CRT फॉस्फर्स द्वारा उपयोग किए जाते हैं जो लाल, हरे और नीले रंगों की मानव धारणा को समान वेट देने की तुलना में बेहतर ढंग से दर्शाते हैं।
आइए देखते हैं कि एक RGB इमेज को ग्रेस्केल इमेज में कैसे बदला जा सकता है।
उदाहरण
from skimage import io
import matplotlib.pyplot as plt
from skimage import data
from skimage.color import rgb2gray
from skimage import data
path = "path to puppy_1.JPG"
orig_img = io.imread(path)
grayscale_img = rgb2gray(orig_img)
fig, axes = plt.subplots(1, 2, figsize=(8, 4))
ax = axes.ravel()
ax[0].imshow(orig_img)
ax[0].set_title("Original image")
ax[1].imshow(grayscale_img, cmap=plt.cm.gray)
ax[1].set_title("Grayscale image")
fig.tight_layout()
plt.show()आउटपुट

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