CV_2: Intensity transformation.
- Biến đổi cường độ sáng là một trong những kỹ thuật xử lý ảnh đơn giản nhất. Bài viết này giới thiệu đến bạn đọc một số phương pháp phổ biến.
- Chúng ta quy ước giá trị pixel trước và sau khi xử lý lần lượt là và , cùng với đó là hàm chuyển đổi ánh xạ sang .
- Vì chúng ta chỉ làm việc với ảnh kỹ thuật số nên các giá trị và là các giá trị nguyên thuộc khoảng .
1. Image negatives
Thường được dùng để làm rõ các chi tiết trắng, xám trên ảnh có vùng tối là chủ đạo. Ảnh output được gọi là ảnh âm bản.
Thực tế là nội dung hai ảnh trên là tương đồng nhau. Tuy nhiên một số người có thể xem xét ảnh dễ dàng hơn trên ảnh âm bản.
2. Log transformation
- Với là hằng số. bị giới hạn trong khoảng , ta có thể chọn để giới hạn output .
- Với , .
Nhận xét:
- với . Log transformation dùng làm sáng các ảnh có độ sáng thấp.
- Với thấp, đồ thị dốc và thoải hơn khi lớn. Log transformation ánh xạ vùng pixel nhỏ (tối), hẹp thành vùng rộng hơn, lớn (sáng) hơn và ngược lại, vùng pixel lớn được nén lại.
3. Power-law (Gamma) transformation
- là hằng số để giới hạn output
- Với , .
Nhận xét:
- Ta dùng sẽ thu được ảnh tối hơn ảnh gốc và ngược lại với .
- Gamma transformation cũng có các nhận xét giống với Log transformation ở trên.
- Để có được ảnh output có chất lượng như mong muốn, sẽ được thử với nhiều giá trị khác nhau. Vì vậy Gamma transformation thường được dùng để điều chỉnh độ tương phản (contrast manipulation).
4. Piecewise linear transformation
4.1. Contras stretching
- Contrast stretching dùng để tăng độ tương phản cho ảnh có độ tương phản thấp (là ảnh có biểu đồ histogram quá tập trung vào một vùng).
Nhận xét:
- Đồ thị chia làm 3 vùng rõ rệt: , và .
- Việc chọn phụ thuộc vào histogram của ảnh muốn xử lý và kết quả mong muốn của ảnh output. Ta muốn kéo dãn vùng pixel có mật độ cao thì cần chọn sao cho đồ thị trong vùng pixel có mật độ cao đó phải dốc hơn các vùng khác.
Ví dụ:
Ảnh gốc:
Contrast stretching với , :
Biểu đồ histogram:
4.2 Intensity-level slicing
Mục đích:
Làm nổi bật lên một vùng pixel nhất định.
Trên đây là hai trường hợp được xử dụng phổ biến hơn cả:
Trường hợp A cho kết quả là một ảnh nhị phân:
Trường hợp B làm highlight một khoảng pixel nhất định, phần còn lại không đổi:
4.3. Bit-plane slicing
Giá trị pixel là một số nguyên được tạo thành từ một dãy nhị phân 8 bits. Ý tưởng của bit-plane slicing là: thay vì biểu diễn ảnh bằng giá trị của các pixel, ta biểu diễn nó bằng 8 tầng ảnh, mỗi tầng tương ứng với mỗi bit.
Ví dụ:
Một pixel có giá trị , giá trị nhị phân của nó là . Khi phân tích thành 8 ảnh bit-plane slicing, giá trị của nó lần lượt là:
- Bit 0: ,
- Bit 0: ,
- Bit 0: ,
- Bit 0: ,
- Bit 0: ,
- Bit 0: ,
- Bit 0: ,
- Bit 0: ,
Việc phân rã ảnh gốc thành các thành phần như vậy có ích cho việc phân tích mối quan hệ và tầm quan trọng của các bit thành phần cấu tạo nên ảnh.
Ảnh gốc và 8 bit-plane
Trong kỹ thuật nén ảnh, bit-plane slicing sẽ chọn vài "plane" tốt để tái cấu trúc ảnh.
Lần lượt theo thứ tự: bit(8), bit(8,7), bit(8,7,6), ảnh gốc