কম্পিউটার টিউটোরিয়াল

পাইথন OpenCV মডিউল ব্যবহার করে হিস্টোগ্রাম ইকুয়ালাইজেশন

এটি ইমেজ প্রসেসিং-এ একটি মেথড যা ইমেজের হিস্টোগ্রাম ব্যবহার করে কন্ট্রাস্ট অ্যাডজাস্টমেন্ট করে।

বাস্তবে এই মেথড সাধারণত অনেক ইমেজের গ্লোবাল কন্ট্রাস্ট বাড়ায়, বিশেষ করে যখন ইমেজের ব্যবহারযোগ্য ডেটা নিকটবর্তী কন্ট্রাস্ট ভ্যালুর দ্বারা রিপ্রেজেন্ট করা হয় এবং এই অ্যাডজাস্টমেন্টের মাধ্যমে, ইন্টেনসিটিগুলো হিস্টোগ্রামে ভালোভাবে বিতরণ করা যায় এবং এটি লোকাল কন্ট্রাস্টের কম থাকা এলিয়াদের উচ্চ কন্ট্রাস্ট পাওয়ার সুযোগ তৈরি করে।

OpenCV-এ এই কাজ করার জন্য একটি ফাংশন রয়েছে, cv2.equalizeHist() এবং এর ইনপুট শুধু গ্রে-স্কেল ইমেজ এবং আউটপুট হলো আমাদের হিস্টোগ্রাম ইকুয়ালাইজড ইমেজ।

এই টেকনিক ভালো কাজ করে যখন ইমেজের হিস্টোগ্রাম একটি নির্দিষ্ট অঞ্চলে সীমাবদ্ধ থাকে এবং এটি সেই জায়গাগুলোতে ভালো কাজ করবে না যেখানে বড় ইন্টেনসিটি ভেরিয়েশন রয়েছে এবং যেখানে হিস্টোগ্রাম একটি বড় অঞ্চল কভার করে, অর্থাৎ উজ্জ্বল এবং অন্ধকার পিক্সেল দুটোই উপস্থিত থাকে।

ইনপুট

পাইথন OpenCV মডিউল ব্যবহার করে হিস্টোগ্রাম ইকুয়ালাইজেশন

উদাহরণ কোড

import cv2
# Numpy ইম্পোর্ট করুন
import numpy as np
# imread মেথড ব্যবহার করে একটি ইমেজ পড়ুন
my_img = cv2.imread('C:/Users/TP/Pictures/west bengal/bishnupur/pp.jpg', 0)
equ = cv2.equalizeHist(my_img)
# দুটি ইমেজ সাইড-বাই-সাইড অরিয়েন্টেশনে স্ট্যাক করুন
res = np.hstack((my_img, equ))
# ইমেজ ইনপুট বনাম আউটপুট দেখান
cv2.imshow('image', res)
cv2.waitKey(0)
cv2.destroyAllWindows()

আউটপুট

পাইথন OpenCV মডিউল ব্যবহার করে হিস্টোগ্রাম ইকুয়ালাইজেশন
  1. পাইথনে ছবি পড়া (OpenCV এবং PIL ব্যবহার করে)

  2. পাইথন প্রোগ্রাম: OpenCV ব্যবহার করে ইমেজের এজ ডিটেকশন

  3. পাইথনে OpenCV ব্যবহার করে টেমপ্লেট ম্যাচিং

  4. পাইথন OpenCV-এ জ্যামিতিক আকৃতি আঁকা