Page 167 - python
P. 167
141
ตัวอยางที่ 11.6 คําสั่ง %pylab inline เปนการขอใช numpy และ matplotlib คําสั่ง from
PIL import Image สําหรับจดการภาพดวยไลบรารี่ PIL ตัวแปร img1 เก็บภาพ lena ตัวแปร gamma
ั
กาหนดใหมีคา 0.8 ตัวแปร img2 สรางภาพสีขาวขนาดเทาภาพ lena จากนั้นวนเขาไปในแนวนอนและ
ํ
็
แนวตั้งของภาพ ทําการอานคาสีดวยคําสั่ง getpixel ที่ตําแหนง x,y เกบไวในตัวแปร r,g,b จากนั้นแปลง
แกมมาดวย สูตร = = และ = แลวทําการเขียนคาสีใสลงในตัวแปร img2 จน
ครบทุกจุดสี จากนั้นวาดภาพดวยคําสั่ง imshow() จะไดผลลัพธดังภาพดานบน
11.10 การเลือกดําเนินการบางสวนภายในภาพ
ี่
ํ
การระบายพนทภายในภาพจะระบุชวงตําแหนงและกาหนดคาใหมดวยสีที่ตองการ เชน
ื้
img[y:y+h, x:x+w] = (0,255,0)
ตัวอยางที่ 11.7 การดําเนินการบางสวนภายในภาพ
%pylab inline
import cv2
img = cv2.imread("lena.jpg")
x = 200; y = 130;
w = 60; h = 10
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
img2 = img.copy()
img2[y:y + h, x : x + w] = (0,255,0)
fig = plt.figure(figsize=(10,5))
ax = fig.add_subplot(1,2,1)
ax.imshow(img)
ax.set_title('Original')
ax1 = fig.add_subplot(1,2,2)
ax1.imshow(img2)
ax1.set_title('Area Fill')
plt.show()