You are on page 1of 6

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

ĐẠI HỌC QUỐC GIA HÀ NỘI

BÁO CÁO
XÂY DỰNG CHƯƠNG TRÌNH GIẢI QUYẾT BÀI TOÁN PHÁT
HIỆN TIỀN “BẨN” TRONG ẢNH TIỀN

Giảng viên hướng dẫn: Hoàng Văn Xiêm


Sinh viên thực hiện: Bùi Thị Hoàn
Nguyễn Thị Ngoan
Mã sinh viên: 20021531
20021560
Lớp: K65 ĐA CLC1
Mã môn học: ELT2014_20

Hà Nội, ngày 15 tháng 4 năm 2023

1
MỤC LỤC

1. Phát biểu bài toán……………………………………………………3

2. Một số nghiên cứu liên quan………………………………………3

3. Triển khai bài toán……………………………………………………3

3.1 Căn chỉnh ảnh…………………………………………………3

3.2 Trừ ảnh…………………………………………………………4

3.3 Kết quả…………………………………………………………5

4. Đánh giá và kết luận…………………………………………………5

2
1. Phát Biểu bài toán
Đưa hai hình ảnh tờ tiền có cấu trúc giống nhau. Ảnh thứ 1 là ảnh gốc,
ảnh thứ 2 là ảnh gốc đã thêm bớt một số nội dung như trong hình. Thuật
toán tự động tìm ra điểm khác biệt trên 2 ảnh đó và đóng khung đỏ lại.

Hình 1: Ảnh gốc bên trái và ảnh cần chỉnh bên phải

Bước 1: Căn chỉnh hai ảnh về cùng kích thước, và giống nhau nhất về
bố cục
Bước 2: Thực hiện kỹ thuật trừ 2 ảnh cho nhau để tìm ra vùng khác biệt

2. Một số nghiên cứu liên quan


Có nhiều nghiên cứu được thực hiện để phát triển các kĩ thuật phát hiện
sự khác biệt giữa hai ảnh. Một số nghiên cứu tiêu biểu:

1. “Siamese Neural Networks for One-shot Image Recognition” của


Koch et al.(2005). Nghiên cứu này đề xuất một mô hình mạng nơ
ron đôi được gọi là “siamese neural network”, cho phéo so sánh
hai ảnh và xác định các sự khác biệt giữa chúng. Mô hình này đã
được áp dụng trong nhiều ứng dụng như phát hiện gian lận thẻ
tín dung, phát hiện giả mạo ảnh và phát hiện gian lận trong bầu
cử.
2. “Learning a Discriminative Filter Bank within a Convolutional
Neural Network for Fine-Graind Recofnition” của Lin et al.(2015):
Nghiên cứu này đề xuất mô hình mạng nơ ron tích chập có thể
học được các bộ lọc đặc trưng phân biệt những sự khác biệt nhỏ
giữa các hình ảnh tương tự. Mô hình này đã được sử dụng để
phát hiện sự khác nhau giữa các hình ảnh y tế, trong đó các sự
khác biệt nhỏ có thể dẫn đến các chuẩn đoán khác nhau.

3. Triển khai bài toán, sử dụng hàm trong OpenCV


3.1 Căn chỉnh ảnh
Bước 1: Tiền xử lý
Bao gồm 2 thao tác: đọc ảnh và chỉnh xám
 Đọc hình ảnh:

3
 Chỉnh xám

Bước 2: Phát hiện đặc trưng

Bước 3: So sánh đặc trưng

3.2 Trừ ảnh


Bước 1: Trừ ảnh
Sẽ cần lấy ảnh đầu vào hay còn gọi là ảnh thứ 2 trừ đi ảnh gốc để ra
ảnh có phần khác biệt giữa 2 ảnh.

Bước 2: Phân ngưỡng

4
Để thực hiện việc phân ngưỡng, hàm threshold trong OpenCV sẽ
được sử dụng như sau:

Trong đó:
- errorImage là ảnh (sau khi sử dụng hàm diff) xám đầu vào
 thresh là ảnh đầu ra
 0 là giá trị ngưỡng được gán nếu pixel giá trị nhỏ hơn giá trị
ngưỡng
 255 là giá trị được gán nếu pixel giá trị lớn hơn giá trị ngưỡng
 THRESH_BINARY là hằng số xác định cách phân ngưỡng. Tùy
theo
các loại phân ngưỡng mà pixel được gán giá trị khác nhau, ví dụ:
 THRESH_BINARY: Nếu giá trị pixel lớn hơn ngưỡng thì gán
bằng maxval. Ngược lại bằng gán bằng 0. Phân đoạn ảnh dựa
trên thuật toán
nở vùng
 THRESH_BINARY_INV: Nếu giá trị pixel lớn hơn ngưỡng thì
gán bằng 0. Ngược lại bằng gán bằng maxval
 THRESH_TRUNC: Nếu giá trị pixel lớn hơn ngưỡng thì gán giá
trị bằng ngưỡng. Ngược lại giữ nguyên giá trị

Bước 3: Lọc nhiễu


Hàm lọc như sau:

Trong đó:
- Thresh là ảnh đầu vào ( ảnh sau khi đã được phân ngưỡng)
- Imdiff là ảnh sau khi thực hiện phép lọc
- 9 là kích thước ma trận lọc và chắc chắn phải là số lẻ

3.3 Kết quả

5
4 Đánh giá và kết luận.
- Tìm hiểu và đánh giá một số kỹ thuật xử ký ảnh
- Bị hạn chế khi xoay góc độ của ảnh, làm cho ảnh bị lỗi
- Đối với những ảnh có nhiều chi tiết hơn sẽ xảy ra trường hợp
chương trình khó tìm thấy những phần sai khác giữa 2 ảnh
- Có thể xây dựng một ứng dụng phát hiện phần khác biệt giữa
hai ảnh dựa theo phương pháp căn chỉnh ảnh và trừ ảnh đã
trình bày

You might also like