Python Pillow - เบลอภาพ
การเบลอภาพทำได้โดยการลดระดับจุดรบกวนในภาพโดยใช้ฟิลเตอร์กับภาพ การเบลอภาพเป็นสิ่งสำคัญอย่างหนึ่งของการประมวลผลภาพ
ImageFilter classในไลบรารีหมอนมีฟิลเตอร์ภาพมาตรฐานหลายตัว สามารถใช้ฟิลเตอร์ภาพกับรูปภาพได้โดยเรียกไฟล์filter() method ของออบเจ็กต์รูปภาพที่มีประเภทฟิลเตอร์ที่ต้องการตามที่กำหนดไว้ในคลาส ImageFilter
มีเทคนิคต่างๆที่ใช้ในการเบลอภาพและเราจะพูดถึงเทคนิคที่กล่าวถึงด้านล่างนี้
เบลอง่าย
กล่องเบลอ
Gaussian เบลอ
เทคนิคทั้งสามนี้จะใช้เมธอด 'Image.filter ()' เพื่อใช้ฟิลเตอร์กับรูปภาพ
เบลอง่าย
ใช้เอฟเฟกต์การเบลอกับภาพตามที่ระบุผ่านเคอร์เนลเฉพาะหรือเมทริกซ์คอนโวลูชั่น
ไวยากรณ์
filter(ImageFilter.BLUR)
ตัวอย่าง
#Import required Image library
from PIL import Image, ImageFilter
#Open existing image
OriImage = Image.open('images/boy.jpg')
OriImage.show()
blurImage = OriImage.filter(ImageFilter.BLUR)
blurImage.show()
#Save blurImage
blurImage.save('images/simBlurImage.jpg')
ในการดำเนินการตัวอย่างด้านบนจะสร้างหน้าต่างยูทิลิตี้การแสดงผล PNG มาตรฐานสองหน้าต่าง (ในกรณีนี้คือหน้าต่าง Photos แอป)
Original image
Blurred image
กล่องเบลอ
ในตัวกรองนี้เราใช้ "รัศมี" เป็นพารามิเตอร์ รัศมีเป็นสัดส่วนโดยตรงกับค่าความเบลอ
ไวยากรณ์
ImageFilter.BoxBlur(radius)
ที่ไหน
Radius - ขนาดของกล่องในทิศทางเดียว
Radius 0 - หมายถึงไม่มีการเบลอและส่งคืนภาพเดียวกัน
RRadius 1 & ลบ; ใช้เวลา 1 พิกเซลในแต่ละทิศทางรวม 9 พิกเซล
ตัวอย่าง
#Import required Image library
from PIL import Image,
#Open existing image
OriImage = Image.open('images/boy.jpg')
OriImage.show()
#Applying BoxBlur filter
boxImage = OriImage.filter(ImageFilter.BoxBlur(5))
boxImage.show()
#Save Boxblur image
boxImage.save('images/boxblur.jpg')
เอาต์พุต
ในการดำเนินการตัวอย่างข้างต้นจะสร้างหน้าต่างยูทิลิตี้การแสดงผล PNG มาตรฐานสองหน้าต่าง (ในกรณีนี้คือแอพ Windows Photos)
Original image
Blurred image
Gaussian Blur
ตัวกรองนี้ยังใช้รัศมีพารามิเตอร์และทำงานเช่นเดียวกับการเบลอของกล่องด้วยการเปลี่ยนแปลงอัลกอริทึมบางอย่าง ในระยะสั้นการเปลี่ยนค่ารัศมีจะสร้างความเข้มของภาพ 'Gaussianblur' ที่แตกต่างกัน
ไวยากรณ์
ImageFilter.GaussianBlur(radius=2)
ที่ไหน
รัศมี - รัศมีเบลอ
ตัวอย่าง
#Import required Image library
from PIL import Image, ImageFilter
#Open existing image
OriImage = Image.open('images/boy.jpg')
OriImage.show()
#Applying GaussianBlur filter
gaussImage = OriImage.filter(ImageFilter.GaussianBlur(5))
gaussImage.show()
#Save Gaussian Blur Image
gaussImage.save('images/gaussian_blur.jpg')
เอาต์พุต
ในการดำเนินการตัวอย่างด้านบนจะสร้างหน้าต่างยูทิลิตี้การแสดงผล PNG มาตรฐานสองหน้าต่าง (ในกรณีนี้คือหน้าต่าง Photos แอป)
Original image
Blurred image