Xử lý ảnh gồm 4 lĩnh vKc chính: xử lý nâng cao chất lượng ảnh, nhận dạng ảnh, nén ảnh v truy vấn ảnh.. Ngy nay xử lý ảnh đã được áp dụng rất rộng rãi trong đời sống như: photoshop, nén
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA ĐIÊN – ĐIÊN TƯ ––––🙠🙠🙠🙠🙠––––
BỘ MÔN: XƯ LÝ ẢNH
ĐỀ TÀI: Chèn phủ ảnh sử dụng ngôn ngữ Python (Overplay
images by Python)
GVHD: TS Nguyễn Văn Thái SVTH : Nhóm 40
Đinh Hồ Trung Hiếu 19651005
Tp Hồ Chí Minh, ngày 01 tháng 01 năm 2022
Trang 2Mục Lục
LỜI CẢM ƠN 1
LỜI NÓI ĐẦU 2
CHƯƠNG 1.TỔNG QUAN 3
1.1 Khái niệm xử lý ảnh 3
1.2 Lý do chn đ ti 4
1.3 Giao diện mn hình 4
CHƯƠNG 2 : KẾT QUẢ 5
2.1 Kết quả đạt được 5
2.2 Code trang giới thiệu 6
2.3 Code chương trình chính 6
2.3.1 Code chèn phủ ảnh 7
2.3.2 Code chèn phủ webcam 7
Trang 3LỜI CẢM ƠN
Trước tiên em xin gởi lời cảm ơn sâu sắc đến Thầy Nguyễn Văn Thái v các thầy cô giáo trong Khoa Điện – Điện Tử đã trang bị kiến thức cho em những kiến thức cần thiết v bổ ích để hon thnh báo cáo môn hc Xử lý ảnh
Do thời gian v kiến thức còn hạn chế nên viê Jc thKc hiê Jn đ ti không tránh khỏi những sai sót Em mong nhận được sK đóng góp bổ sung của thầy v các bạn Cuối cùng xin chân thnh cảm ơn tất cả các bạn đã đóng góp ý kiến v hổ trợ em trong quá trình thKc hiện báo cáo môn hc ny
Trang 4LỜI NÓI ĐẦU
Ngy nay với sK phát triển như vũ bão của công nghệ thông tin Nó đã đem lại những ứng dụng to lớn trong nhiu lĩnh vKc khác nhau Công nghệ thông tin đã trở thnh ngnh công nghiệp mũi nhn của nhiu nước trên thế giới SK tồn tại v phát triển của một doanh nghiệp, cơ quan, tổ chức nh nước Không thể thiếu sK trợ giúp của máy tính
Trong việc quản lý, thu nhận v xử lý thông tin với khối lượng ngy cng lớn, nhiu lúc với những phần mm thủ công không đem lại hiệu quả mong muốn, tốn nhiu công sức v thời gian
Đây l một phân ngnh khoa hc mới rất phát triển trong những năm gần đây
Xử lý ảnh gồm 4 lĩnh vKc chính: xử lý nâng cao chất lượng ảnh, nhận dạng ảnh, nén ảnh v truy vấn ảnh SK phát triển của xử lý ảnh đem lại rất nhiu lợi ích cho cuộc sống của con người
Ngy nay xử lý ảnh đã được áp dụng rất rộng rãi trong đời sống như: photoshop, nén ảnh, nén video, nhận dạng biển số xe, nhận dạng khuôn mặt, nhận dạng chữ viết, xử lý ảnh thiên văn, ảnh y tế,
Trang 5CHƯƠNG 1 : TỔNG QUAN
1.1 Khái niệm xử lý ảnh
Xử lý ảnh l một lĩnh vKc mang tính khoa hc v công nghệ Nó l một ngnh khoa hc mới mẻ so với nhiu ngnh khoa hc khác nhưng tốc độ phát triển của nó rất nhanh, kích thích các trung tâm nghiên cứu, ứng dụng, đặc biệt l máy tính chuyên dụng riêng cho nó
Xử lý ảnh được đưa vo giảng dạy ở bậc đại hc ở nước ta khoảng chục năm nay Nó l môn hc liên quan đến nhiu lĩnh vKc v cần nhiu kiến thức cơ sở khác Đầu tiên phải kể đến xử lý tín hiệu số l một môn hc cơ bản cho xử lý tín hiệu chung, các khái niệm v tích chập, các biến đổi Fourier, biến đổi Laplace, các bộ lc hữu hạn… Thứ hai, các công cụ toán như Đại số tuyến tính, xác suất, thống kê Một số kiến thứ cần thiết như trí tuệ nhân tao, mạng nơron nhân tạo cũng được đ cập trong quá trình phân tích v nhận dạng ảnh
Các phương pháp xử lý ảnh bắt đầu từ các ứng dụng chính: nâng cao chất lượng ảnh v phân tích ảnh Ứng dụng đầu tiên được biết đến l nâng cao chất lượng ảnh báo được truyn qua cáp từ Luân đôn đến New York từ những năm 1920 Vấn đ nâng cao chất lượng ảnh có liên quan tới phân bố mức sáng v độ phân giải của ảnh Việc nâng cao chất lượng ảnh được phát triển vo khoảng những năm 1955 Điu ny
có thể giải thích được vì sau thế chiến thứ hai, máy tính phát triển nhanh tạo điu kiện cho quá trình xử lý ảnh số thuận lợi Năm 1964, máy tính đã có khả năng xử lý v nâng cao chất lượng ảnh từ mặt trăng v vệ tinh Ranger 7 của Mỹ bao gồm: lm nổi đường biên, lưu ảnh Từ năm 1964 đến nay, các phương tiện xử lý, nâng cao chất lượng, nhận dạng ảnh phát triển không ngừng Các phương pháp tri thức nhân tạo như mạng nơ ron nhân tạo, các thuật toán xử lý hiện đại v cải tiến, các công cụ nén ảnh ngy cng được áp dụng rộng rãi v thu nhiu kết quả khả quan
Để dễ tưởng tượng, xét các bước cần thiết trong xử lý ảnh Đầu tiên, ảnh tK nhiên từ thế giới ngoi được thu nhận qua các thiết bị thu (như Camera, máy chụp ảnh) Trước đây,ảnh thu qua Camera l các ảnh tương tK (loại Camera ống kiểu CCIR) Gần đây, với sK phát triển của công nghệ, ảnh mu hoặc đen trắng được lấy
ra từ Camera, sau đó nó được chuyển trKc tiếp thnh ảnh số tạo thuận lợi cho xử lý tiếp theo (Máy ảnh số hiện nay l một thí dụ gần gũi) Mặt khác, ảnh cũng có thể tiếp nhận từ vệ tinh;có thể quét từ ảnh chụp bằng máy quét ảnh
Trang 61.2 Lý do chn đ ti
1.3 Giao diện mn hình
2.1 Kết quả đạt được: CHƯƠNG 2 KẾT QUẢ
2.1.1 Chèn phủ logo vo hình ảnh
Trang 72.1.2 Chèn phủ logo vo Webcam máy tính
Trang 82.2 Code trang giới thiệu
from tkinter import *
from tkinter import Label, Tk , Button
from PIL import Image,ImageTk
root.title('Gioi Thieu')
root.geometry("1300x1000")
root.iconbitmap('logo1.ico')
Image.open('giaodien.png')
render= ImageTk.PhotoImage(load)
img=Label(root,image=render)
img.place(x=0,y=0)
root.mainloop()
2.3 Code chương trình chính
import cvzone
import cv2
from tkinter import *
from tkinter import Label, Tk , Button
from PIL import Image,ImageTk
def Logo():
imgBack = cv2.imread("lena_color.jpg")
imgFront = cv2.imread("logo1.png", cv2.IMREAD_UNCHANGED) imgFront = cv2.resize(imgFront, (0, 0), None, 0.75, 0.75)
hf, wf, cf = imgFront.shape
hb, wb, cb = imgBack.shape
imgResult = cvzone.overlayPNG(imgBack, imgFront, [0, hb-hf]) cv2.imshow("Image", imgResult)
cv2.waitKey(0)
def Webcam():
cap = cv2.VideoCapture(0)
success, img = cap.read()
imgFront = cv2.imread("logo1.png", cv2.IMREAD_UNCHANGED) imgFront = cv2.resize(imgFront, (0, 0), None, 0.75, 0.75)
hf, wf, cf = imgFront.shape
hb, wb, cb = img.shape
fpsReader = cvzone.FPS()
while True:
success, img = cap.read()
Trang 9imgResult = cvzone.overlayPNG(img, imgFront, [0, hb-hf]) _, imgResult = fpsReader.update(imgResult)
cv2.waitKey(0)
root = Tk()
root.title('Gioi Thieu')
root.geometry("1300x1000")
root.iconbitmap('logo1.ico')
load = Image.open('giaodien.png')
render= ImageTk.PhotoImage(load)
img=Label(root,image=render)
img.place(x=0,y=0)
c = Button(root, text = "Open2",command=Webcam,pady=10)
c.pack(side = RIGHT)
b = Button(root, text = "Open1",command=Logo,pady=10)
b.pack(side = RIGHT)
root.mainloop()
2.3.1 Code chèn phủ ảnh
import cvzone
import cv2
imgBack = cv2.imread("lena_color.jpg")
imgFront = cv2.imread("logo1.png", cv2.IMREAD_UNCHANGED) imgFront = cv2.resize(imgFront, (0, 0), None, 0.75, 0.75)
hf, wf, cf = imgFront.shape
hb, wb, cb = imgBack.shape
imgResult = cvzone.overlayPNG(imgBack, imgFront, [0, hb-hf]) cv2.imshow("Image", imgResult)
cv2.waitKey(0)
2.3.2 Code chèn phủ Webcam
import cvzone
import cv2
cap = cv2.VideoCapture(0)
success, img = cap.read()
imgFront = cv2.imread("logo1.png", cv2.IMREAD_UNCHANGED) imgFront = cv2.resize(imgFront, (0, 0), None, 0.75, 0.75)
Trang 10hf, wf, cf = imgFront.shape
hb, wb, cb = img.shape
fpsReader = cvzone.FPS()
while True:
success, img = cap.read()
imgResult = cvzone.overlayPNG(img, imgFront, [0, hb-hf]) _, imgResult = fpsReader.update(imgResult)
cv2.imshow("Webcam", imgResult)
cv2.waitKey(0)