Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

กำลังอ่านภาพโดยใช้ Python?


การประมวลผลภาพโดยใช้ OpenCV

OpenCV (โอเพ่นซอร์สคอมพิวเตอร์วิทัศน์) เป็นไลบรารีการเขียนโปรแกรมโอเพ่นซอร์สที่พัฒนาขึ้นโดยทั่วไปสำหรับการเรียนรู้ของเครื่องและการมองเห็นด้วยคอมพิวเตอร์ มีโครงสร้างพื้นฐานทั่วไปในการทำงานกับแอปพลิเคชันวิชันซิสเต็มและเร่งการใช้แมชชีนเลิร์นนิงในผลิตภัณฑ์เชิงพาณิชย์

ด้วยอัลกอริธึมที่ปรับให้เหมาะสมมากกว่า 2.5 พันรายการสำหรับทั้งการมองเห็นด้วยคอมพิวเตอร์และการเรียนรู้ของเครื่อง จึงเป็นทั้งอัลกอริธึมแบบคลาสสิกและล้ำสมัย ด้วยอัลกอริธึมมากมาย ทำให้ใช้ไลบรารี่เพื่อวัตถุประสงค์หลายประการ เช่น การตรวจจับใบหน้าและการจดจำ ระบุวัตถุ จำแนกการกระทำของมนุษย์ในวิดีโอ ติดตามการเคลื่อนไหวของกล้อง รวมภาพเข้าด้วยกันเพื่อสร้างภาพความละเอียดสูงของทั้งฉาก และอีกมากมาย

ในนี้ฉันจะพยายามอธิบายว่าเราจะใช้ไลบรารี OpenCV และ python เพื่ออ่านและแสดงภาพได้อย่างไร ดำเนินการโดยใช้โมดูล cv2 และ Numpy

คุณสามารถดาวน์โหลดโมดูล numpy ได้จาก Python Package Index (PyPI)

$ pip install numpy

อ่านรูปภาพ

เราใช้ฟังก์ชัน cv2.imread() เพื่ออ่านรูปภาพ รูปภาพควรอยู่ในไดเร็กทอรีการทำงานปัจจุบัน มิฉะนั้น เราจำเป็นต้องระบุพาธสัมบูรณ์

import numpy as np
import cv2
# Load an color image in grayscale
img = cv2.imread('Top-bike-wallpaper.jpg',0)

แสดงภาพ

หากต้องการแสดงรูปภาพในหน้าต่าง ให้ใช้ฟังก์ชัน cv2.imshow()

#Display the image
cv2.imshow('image',img)
#key binding function
cv2.waitKey(0)
#Destroyed all window we created earlier.
cv2.destroyAllWindows()

เมื่อเรียกใช้โค้ดด้านบน ภาพหน้าจอของหน้าต่างจะมีลักษณะดังนี้

กำลังอ่านภาพโดยใช้ Python?

เขียนภาพ

ใช้ฟังก์ชัน cv2.imwrite() เพื่อบันทึกภาพ

อาร์กิวเมนต์แรกคือชื่อไฟล์ อาร์กิวเมนต์ที่สองคือรูปภาพที่คุณต้องการบันทึก

cv2.imwrite('messigray.png',img)

สรุป −

import numpy as np
import cv2

#Read the Image
# Load an color image in grayscale
img = cv2.imread('Top-bike-wallpaper.jpg',0)

#Display the image
cv2.imshow('image',img)

#key binding function
k = cv2.waitKey(0)

# wait for ESC key to exit
if k == 27:
   cv2.destroyAllWindows()
# wait for 's' key to save and exit
elif k == ord('s'):
   cv2.imwrite('myBike.jpg',img)
   cv2.destroyAllWindows()

บันทึกภาพโดยกด 's' หรือกดปุ่ม 'ESC' เพื่อออกโดยไม่บันทึก

การใช้ Python Imaging Library (PIL)

Python Imaging Library (PIL) เป็นไลบรารีจัดการรูปภาพใน python ใช้ pip เพื่อติดตั้งไลบรารี PIL

$ pip install Pillow

จากรูปภาพนำเข้า PIL, ImageFilter

#Read image
im = Image.open( 'myBike.png' )

#Display image
im.show()

#Applying a filter to the image
im_sharp = im.filter( ImageFilter.SHARPEN )

#Saving the filtered image to a new file
im_sharp.save( 'another_Bike.jpg', 'JPEG' )

ผลลัพธ์

กำลังอ่านภาพโดยใช้ Python?

รูปภาพถูกบันทึกในตำแหน่งเริ่มต้นของฉัน .i.e. ไดเรกทอรีที่ทำงานอยู่ในปัจจุบันและภาพหน้าจอของหน้าต่างจะแสดงภาพของเรา