Arithmetic Operations on Images
จาก Morange Wiki
เนื้อหา
การนำหลักการทางคณิตศาสตร์มาใช้งานร่วมกับรูปภาพ
วัตถุประสงค์
- เรียนรู้การนำหลายๆหลักการทางคณิตศาสตร์มาใช้ร่วมกัน เช่นการ บวก ลบ หรือแล้วแต่จะเหมาะสมกับงาน
- เรียนรู้การใช้งานฟังก์ชั่น cs2.add() , cv2.addWeighted()
การเพิ่มรูปภาพ
- การเพิ่มรูปภาพสามารถทำได้โดยฟังก์ชั่น cv2.add() หรือใช้กระบวนการของ numpy เช่น res = img1 + img2 โดยทั้ง 2 ภาพที่เพิ่มนั้น ควรจะมีค่าความลึกและชนิดเหมือนกัน
เข้า Terminal และ พิมพ์ python แล้ว ทดลองพิมพ์ Code ต่อไปนี้
>>> x = np.uint8([250]) >>> y = np.uint8([10]) [[255]] # ผลลัพธ์ที่จะได้ >>> print cv2.add(x,y) # 250+10 = 260 => 255 >>> print x+y # 250+10 = 260 % 256 = 4 [4] # ผลลัพธ์ที่จะได้
การรวมภาพและสูตร
- ในการรวมภาพ ทั้งสองรูปภาพที่จะทำการรวมนั้น ควรจะมี ขนาดใกล้เคียงกัน เพราะจะทำให้รูปภาพดูเป็นกลมกลืนมากขึ้น โดยจะใช้หลักการทางคณิตศาสตร์ดังรูปด้านล่างนี้
- สมมุติว่าหากเราเพิ่มรูปสองรูปภาพ ภาพแรกจะมีค่าน้ำหนัก (weight) ที่ 0.7 แล้ว ภาพที่ 2 ได้ 0.3 เราจะทำให้ภาพทั้งสองมีน้ำหนักผสมกันโดยใช้คำสั่ง cv2.addWeighted() ดังสูตรต่อไปนี้
จากสูตรสู่รูปแบบโค๊ดตัวอย่าง
img1 = cv2.imread('ex1.png') img2 = cv2.imread('ex2.png') dst = cv2.addWeighted(img1,0.7,img2,0.3,0) # 0 คือค่า γ cv2.imshow('dst',dst) cv2.waitKey(0) cv2.destroyAllWindows()