[Tự Học Xử Lý ảnh] XỬ LÝ VÀ NÂNG CAO CHẤT LƯỢNG ẢNH

Trang chủNâng cao chất lượng ảnh [Tự học xử lý ảnh] XỬ LÝ VÀ NÂNG CAO CHẤT LƯỢNG ẢNH tháng 10 12, 2018 Bài trước: Bài 2: THU NHẬN ẢNH

XỬ LÝ VÀ NÂNG CAO CHẤT LƯỢNG ẢNH

Cải thiện ảnh sử dụng các toán tử điểm

Các phép toán không phụ thuộc không gian là các phép toán không phục thuộc vị trí của điểm ảnh. Ví dụ: Phép tăng giảm độ sáng, phépthốngkê tần suất,biếnđổi tần suất v.v.. Một trong những khái niệm quan trọng trong xử lý ảnh là biểu đồ tần suất (Histogram)

Biểu đồ tần suất

Biểu đồ tần suất mức xám g của ảnh I là số điểm ảnh có giá trị g của ảnh I. Ký hiệu là h(g). Ví dụ:

Táchngưỡng

Giả sử ta có ảnh I ~ kích thước m ´ n, hai số Min, Max và ngưỡng q khi đó: Kỹ thuật tách ngưỡng được thể hiện
for (i = 0; i < m; i + +) for (j = 0; j < n; j + +) I [i, j] = I [i, j] > = q? Max : Min;
* Ứng dụng: Nếu Min = 0, Max = 1 kỹ thuật chuyển ảnh thành ảnh đen trắng được ứng dụng khi quét và nhận dạng văn bản có thể xảy ra sai sót nền thành ảnh hoặc ảnh thành nền dẫn đến ảnh bị đứt nét hoặc dính.

cụm

Kỹ thuật nhằm giảm bớt số mức xám của ảnh bằng cách nhóm lại số mức xám gần nhau thành 1 nhóm Nếu chỉ có 2 nhóm thì chính là kỹ thuật tách ngưỡng. Thông thườngcó nhiều nhóm với kích thước khácnhau. Để tổng quát khi biến đổi người ta sẽ lấy cùng 1 kích thướcbunch_size
tinhoccoban.net - Bó cụm ảnh
Bó cụm ảnh
I [i,j] =[ I [i,j]/ bunch _size ]* bunch_size "(i,j) Ví dụ: Bó cụm ảnh sau với bunch_size= 3
1 2 4 6 7
2 1 3 4 5
I = 7 2 6 9 1
4 1 2 1 2
0 0 3 6 6
0 0 3 3 3
Ikq = 6 0 6 9 0
3 0 0 0 0
Ảnh I được gọi là cân bằng "lý tưởng" nếu với mọi mức xám g, g’ tacó h(g) = h(g’) Giả sử, tacóảnhI ~ kích thước m ´n, new_level ~ số mức xám của ảnh cân bằng tinhoccoban.net Ví dụ:Cân bằng ảnh sau với new_level= 4
tinhoccoban.net - Ma trận ảnh
Ma trận ảnh
Lần lượt tính h(g), t(g) và f(g). Tin học cơ bản
tinhoccoban.net - Kết quả sau cân bằng Histogram của ảnh I
Kết quả sau cân bằng Histogram của ảnh I
Chú ý: Ảnh sau khi thực hiện cân bằng chưa chắc đã là cân bằng "lý tưởng"

Kỹ thuật tách ngưỡng tựđộng

Ngưỡng q trong kỹ thuật tách ngưỡng thường được cho bởi người sử dụng. Kỹ thuật tách ngưỡng tự động nhằm tìm ra ngưỡng q một cách tự động dựa vào histogram theo nguyên lý trong vật lý là vật thể tách làm 2 phần nếu tổng độ lệnh trong từng phần là tốithiểu. Giả sử, tacóảnhI ~ kích thước m ´n G ~ là số mức xám của ảnh kể cả khuyết thiếu t(g) ~ số điểm ảnh có mức xám £ g tinhoccoban.net Ví dụ: Tìm ngưỡng tự động của ảnh sau:
0 1 2 3 4 5
0 0 1 2 3 4
I = 0 0 0 1 2 3
0 0 0 0 1 2
0 0 0 0 0 1
tinhoccoban.net

Biến đổi cấp xám tổng thể

Nếu biết ảnh và hàm biến đổi thì ta có thể tính được ảnh kết quả và do đó ta sẽ có được histogram của ảnh biến đổi. Nhưng thực tế nhiều khi ta chỉ biết histogram của ảnh gốc và hàm biến đổi, câu hỏi đặt ra là liệu ta có thể có được histogram của ảnh biến đổi. Nếu có như vậy ta có thể hiệu chỉnh hàm biến đổi đểthuđượcảnhkếtquảcóphânbốhistogramnhưmong muốn. Bài toán đặt ra là biết histogram của ảnh, biết hàm biến đổi hãy vẽ histogram của ảnh mới.
g 1 2 3 4
h(g) 4 2 1 2
tinhoccoban.net Bước 1: Vẽ Histogram của ảnh cũ
tinhoccoban.net - Histogram của ảnh cũ
Histogram của ảnh cũ
Bước 2: Vẽ đồ thị hàm f(g)
tinhoccoban.net - Đồ thị hàm f(g)
Đồ thị hàm f(g)
Bước 3: Vẽ Histogram của ảnh mới
tinhoccoban.net - Histogram của ảnh mới
Histogram của ảnh mới
Histogram của ảnh mới thua được bằng cách chồng hình và tính giá trị theo các q (= f(g)) theo công thức tính trên. Kết quả cuối thu được sau phép quay góc 90 thuận chiều kim đồng hồ.

Cải thiện ảnh sử dụng các toán tử không gian

Phép cuộn và mẫu

Giả sử ta có ảnh I kích thước M ´ N, mẫu T có kích thước m ´ n khi đó, ảnh I cuộn theo mẫu T được xác định bởi công thức. Ví dụ:
tinhoccoban.net - Công thức cuộn mẫu với mẫu T
Công thức cuộn mẫu với mẫu T
Ví dụ cuộn ảnh I sau đây theo mẫu T
tinhoccoban.net - Ảnh I và mẫu T
Ảnh I và mẫu T
Áp dụng công thức (3.1) , ta có: Và được kết quả:
tinhoccoban.net - Kết quả tính theo công thức cuộn mẫu (3.1)
Kết quả tính theo công thức cuộn mẫu (3.1)
Tương tự, tính theo công thức cuộn mẫu (3.2)
tinhoccoban.net - Kết quả tính theo công thức cuộn mẫu (3.2)
Kết quả tính theo công thức cuộn mẫu (3.2)

Cuộn mẫu T, code bằng C#

public Image PhepCuon(Image imageInput, int Option) { //Option=0,1,2 tuong duong voi mau T,T1,T2 switch (Option) { case 0: //Nap anh vao bitmap BitmapData bmData = imageRoot.LockBits(new Rectangle(0, 0, imageRoot.Width, imageRoot.Height), ImageLockMode.ReadWrite, imageRoot.PixelFormat); int stride = bmData.Stride; System.IntPtr Scan0 = bmData.Scan0; unsafe { byte* p = (byte*)(void*)Scan0; int nOffset = stride - imageRoot.Width * 3; byte red, green, blue; for (int y = 0; y < imageRoot.Height-1; y++) { for (int x = 0; x < imageRoot.Width; x++) { blue = p[0]; green = p[1]; red = p[2]; byte* pi = p ; //pi la dong tiep theo cua ma tran pi += nOffset; p[0] = (byte)(p[0] + pi[3]); //if (p[0]>255) //{ // p[0] = 255; //} p[1] = (byte)(p[1] + pi[4]); //if (p[1]>255) //{ // p[1] = 255; //} p[2] = (byte)(p[2]+pi[5]); //if (p[2]>255) //{ // p[2] = 255; //} p += 3; } //p += imageRoot.Width; p += nOffset; } } imageRoot.UnlockBits(bmData); return imageRoot; }}
tinhococban.net - Ảnh cuộn theo mẫu T sau khi chuyển sang ảnh Xám
Ảnh cuộn theo mẫu T sau khi chuyển sang ảnh Xám

Một số mẫu thông dụng

1 1 1
T1 = 1 1 1
1 1 1
~ Dùng để khử nhiễu -> Các điểm có tần số cao
1 2 4 5 8 7
2 31 1 4 2 2
I =4 5 5 8 8 2
1 2 1 1 4 4
7 2 2 1 5 2
55 65 45 46 * *
52 58 34 35 * *
I Ä T1 = 29 27 35 35 * *
* * * * * *
* * * * * *
Áp dụng kỹ thuật cộng hằng số với c = -27, ta có:
28 38 18 19 **
25 31 7 8 **
Ikq=2 0 8 8 **
* * * * **
* * * * **
0-10 T2=-14-1 0-10 ~ Dùng để phát hiện các điểm có tần số cao. Ví dụ 2:
114 -40 0 -14**
-22 5 14 16**
I ÄT2=-1-6 -10 -2 **
* * * ***
* * * ***

Lọc trungvị

* Định nghĩa (Trung vị) Cho dãy x1; x2...; xn đơn điệu tăng (giảm). Khi đó trung vị của dãy ký hiệu là Med({xn}), được định nghĩa: Kỹ thuật lọc trung vị: Giả sử ta có ảnh I ngưỡng θ cửa sổ W(P) và điểm ảnh PKhi đó kỹ thuật lọc trung vị phụ thuộc không gian bao gồm các bước cơ bản sau: Ví dụ: tinhoccoban.net Giá trị 16, sau phép lọc có giá trị 2, các giá trị còn lại không thay đổi giá trị.

Lọc trung bình

Định nghĩa (Trungbình) Cho dãy x1, x2…, xn khi đó trung bình của dãy ký hiệu AV({xn})được định nghĩa: Mệnh đề Kỹ thuật lọc trung bình Giả sử ta có ảnh I, điểm ảnh P, cửa sổ W(P) và ngưỡng . Khi đó kỹ thuật lọc trung bình phụ thuộc không gian bao gồm các bước cơ bản sau: + Bước 1: Tìm trung bình {I(q)| q Î W(P)} ® AV(P) + Bước 2: Gán giá trị
Ví dụ:
1 2 3 2
4 16 2 1
I = 4 2 1 1
2 1 2 1
W(3 ´ 3); q = 2
1 2 3 2
4 3 2 1
Ikq = 4 2 1 1
2 1 2 1
Giá trị 16 sau phép lọc trung bình có giá trị 3, các giá trị còn lại giữ nguyên sau phép lọc.

Lọc trung bình theo k giá trị gần nhất

Giả sử ta có ảnh I, điểm ảnh P, cửa sổ W(P), ngưỡng q và số k. Khi đó, lọc trung bình theo k giá trị gần nhất bao gồm các bước sau: tinhoccoban.net Ví dụ, cho ảnh I và các thông số như dưới, ta sẽ có ảnh kết quả như sau: tinhoccoban.net Nhận xét: Nếu k lớn hơn kích thước cửa sổ thì kỹ thuật chính là kỹ thuật lọc trungbình Nếu k= 1 thì ảnh kết quả không thayđổi Þ Chất lượng của kỹ thuật phụ thuộc vào số phân tử lựa chọn k.

Khôi phục ảnh

Nội dung khôi phục ảnh sẽ bàn tới trong bài viết khác.

Bài tập cuối bài.

  • Viết chương trình đọc vào 1 ảnh và tăng, giảm độ sáng của ảnh.
  • Viết chương trình đọc vào 1 ảnh và tách ngưỡng ảnh đó, sau đó hiển thị ảnh đã tách ngưỡng.
  • Viết chương trình đọc vào 1 ảnh và bó cụm ảnh đó, sau đó hiển thị ảnh đã bó cụm.
  • Viết chương trình đọc vào 1 ảnh và cân bằng histogram của ảnh đó, sau đó hiển thị ảnh đã cân bằng.
  • Viết chương trình đọc vào 1 ảnh và tách ngưỡng tự động cho ảnh đó, hiển thị ảnh sau khi tách ngưỡng tự động.
  • Viết chương trình đọc vào 1 ảnh và biến đổi mức xám tổng thể của ảnh đó, sau đó hiển thị ảnh sau khi đã biến đổi.
  • Viết chương trình đọc vào 1 ảnh và cuộn mẫu theo mẫu (T1, T2…)
  • Viết chương trình đọc vào 1 ảnh, lọc trung bình ảnh đó, sau đó hiển thị ảnh đã lọc.
  • Viết chương trình đọc vào 1 ảnh, lọc trung vị ảnh đó, sau đó hiển thị ảnh đã lọc.
  • Viết chương trình đọc vào 1 ảnh, lọc trung bình theo k giá trị gần nhất cho ảnh đó, sau đó hiển thị ảnh đã lọc.
Bài tiếp theo: Tags Nâng cao chất lượng ảnh xulyanh Mới hơn Cũ hơn

Popular Posts

[Thuật toán] Thuật toán tìm kiếm tuần tự

tháng 3 04, 2016 2

[Tự học lập trình C/C++] Viết hàm tính giá trị trung bình cộng của các phần tử có trong mảng.

tháng 5 06, 2016 3

[Tự học lập trình C/C++] Các lỗi thường gặp trong lập trình

tháng 5 17, 2016 4

[Hệ thống thông tin] Tổng quan về hệ thống thông tin

tháng 10 05, 2015

Đăng ký

Nhận thông báo qua email

Categories

  • Algorithm (27)
  • Chuyen nganh (64)
  • Cong nghe XML (1)
  • Cơ sở dữ liệu (3)
  • Cơ sở lập trình (2)
  • Design Pattern (2)
  • Download mẫu văn bản (1)
  • download winrar (1)
  • Downloads (4)
  • Đồ họa máy tính (6)
  • Giáo dục điện tử (2)
  • Hệ quản trị cơ sở dữ liệu (21)
  • Hệ quản trị cơ sở dữ liệu. (8)
  • Học Power point (2)
  • Hồ sơ xin việc (1)
  • Image processing (3)
  • Kiến trúc Web (1)
  • Lap trinh assembly (4)
  • Lap trinh C va C plus (65)
  • Lap trinh C va C++ (3)
  • Lap trinh C/C++ (2)
  • Lap trinh C# (6)
  • lap trinh co so du lieu (2)
  • Lap trinh he thong (9)
  • lap trinh hop ngu (7)
  • Lap trinh huong doi tuong voi Java (12)
  • lap trinh windows (3)
  • lập trình C (3)
  • lập trình với C# (2)
  • Lập trình windows (7)
  • Mẫu CV (1)
  • Nâng cao chất lượng ảnh (1)
  • News (8)
  • Ngẫm nghĩ (2)
  • Phan tich thiet ke he thong (1)
  • Phat trien he thong (42)
  • quangcaotructuyen (1)
  • Sách (9)
  • sách bán chạy (4)
  • Sách công nghệ thông tin (5)
  • sách kỹ năng (1)
  • SQL cơ bản và nâng cao (1)
  • su dung accsess (3)
  • sudungExcel (28)
  • sudungword (10)
  • System Information (19)
  • thiet bi tin hoc (2)
  • Thu nhan anh (1)
  • Thuật ngữ (1)
  • Thuongmaidientu (4)
  • Tin hoc dai cuong (1)
  • Tin hoc van phong (23)
  • trac nghiem (1)
  • trituenhantao (5)
  • Tư duy thiết kế (2)
  • Windows 7 USB Download Tool (1)
  • xulyanh (5)
  • xử lý ảnh (4)

Main Tags

  • Algorithm
  • Chuyen nganh
  • Cong nghe XML
  • Cơ sở dữ liệu
  • Cơ sở lập trình
  • Design Pattern
  • Download mẫu văn bản
  • download winrar
  • Downloads
  • Đồ họa máy tính
  • Giáo dục điện tử
  • Hệ quản trị cơ sở dữ liệu
  • Hệ quản trị cơ sở dữ liệu.
  • Học Power point
  • Hồ sơ xin việc
  • Image processing
  • Kiến trúc Web
  • Lap trinh assembly
  • Lap trinh C va C plus
  • Lap trinh C va C++
  • Lap trinh C/C++
  • Lap trinh C#
  • lap trinh co so du lieu
  • Lap trinh he thong
  • lap trinh hop ngu
  • Lap trinh huong doi tuong voi Java
  • lap trinh windows
  • lập trình C
  • lập trình với C#
  • Lập trình windows
  • Mẫu CV
  • Nâng cao chất lượng ảnh
  • News
  • Ngẫm nghĩ
  • Phan tich thiet ke he thong
  • Phat trien he thong
  • quangcaotructuyen
  • Sách
  • sách bán chạy
  • Sách công nghệ thông tin
  • sách kỹ năng
  • SQL cơ bản và nâng cao
  • su dung accsess
  • sudungExcel
  • sudungword
  • System Information
  • thiet bi tin hoc
  • Thu nhan anh
  • Thuật ngữ
  • Thuongmaidientu
  • Tin hoc dai cuong
  • Tin hoc van phong
  • trac nghiem
  • trituenhantao
  • Tư duy thiết kế
  • Windows 7 USB Download Tool
  • xulyanh
  • xử lý ảnh

Bài đăng phổ biến

Tập lệnh assembly của Intel 8086/8088 (Phần 3)

tháng 3 06, 2017 2

Tập lệnh assembly của Intel 8086/8088 (Phần 1)

tháng 3 06, 2017 3

[Tự học lập trình C] Chương trình con và hàm

tháng 3 08, 2016 Tin học cơ bản Copyright 2021 Tinhoccoban.net

Bài viết mới nhất

Tin học cơ bản - Nền tảng của mọi kỹ năng

Mọi thông tin trên blog đều được giữ bản quyền bởi Tin học cơ bản. Các bạn nếu muốn lấy thông tin từ blog vui lòng ghi rõ nguồn Tinhoccoban.net

TIN HỌC CƠ BẢN

Chia sẻ với ứng dụng khác Sao chép Liên kết bài đăng Sao chép

Biểu mẫu liên hệ

Từ khóa » Cân Bằng Lược đồ Xám