Hướng dẫn power law transformation in image processing python code - chuyển đổi luật lũy thừa trong mã python xử lý hình ảnh

Gamma sửa chữa của Gamma, hầu hết các bạn có thể đã nghe thấy điều nghe kỳ lạ này. Trong blog này, chúng tôi sẽ thấy nó có nghĩa là gì và tại sao nó lại quan trọng với bạn?

Hình thức chung của chức năng chuyển đổi luật quyền lực (gamma) là

s = c*rγ

Trong đó, ’s và và r là các giá trị pixel đầu ra và đầu vào, tương ứng và‘ C, và là các hằng số dương. Giống như chuyển đổi nhật ký, các đường cong luật điện với 1, chúng ta nhận được kết quả ngược lại được hiển thị trong hình bên dưới

Điều này còn được gọi là hiệu chỉnh gamma, mã hóa gamma hoặc nén gamma. Don lồng bị bối rối.

Các đường cong dưới đây được tạo ra cho các giá trị R được chuẩn hóa từ 0 đến 1. sau đó nhân với hằng số tỷ lệ C tương ứng với kích thước bit được sử dụng.

Hướng dẫn power law transformation in image processing python code - chuyển đổi luật lũy thừa trong mã python xử lý hình ảnh
Tất cả các đường cong được thu nhỏ. Don Tiết bị nhầm lẫn & nbsp; (Xem & NBSP; bên dưới)

Nhưng câu hỏi chính là tại sao chúng ta cần sự chuyển đổi này, lợi ích của việc làm như vậy là gì?why we need this transformation, what’s the benefit of doing so?

Để hiểu điều này, trước tiên chúng ta cần biết đôi mắt của chúng ta cảm nhận được ánh sáng như thế nào. Nhận thức của con người về độ sáng tuân theo một hàm sức mạnh gần đúng (như được hiển thị bên dưới) theo luật sức mạnh của Stevens, đối với nhận thức về độ sáng.

Hướng dẫn power law transformation in image processing python code - chuyển đổi luật lũy thừa trong mã python xử lý hình ảnh

Xem từ hình trên, nếu chúng ta thay đổi đầu vào từ 0 thành 10, đầu ra sẽ thay đổi từ 0 thành 50 (xấp xỉ) Nhưng thay đổi đầu vào từ 240 thành 255 không thực sự thay đổi giá trị đầu ra. Điều này có nghĩa là chúng ta nhạy cảm hơn với những thay đổi trong bóng tối so với sáng. Bạn có thể đã tự nhận ra nó là tốt!

Nhưng máy ảnh của chúng tôi không hoạt động như thế này. Không giống như nhận thức của con người, máy ảnh theo mối quan hệ tuyến tính. Điều này có nghĩa là nếu ánh sáng rơi trên máy ảnh được tăng thêm 2 lần, đầu ra cũng sẽ tăng 2 lần. Đường cong camera trông như thế này

Hướng dẫn power law transformation in image processing python code - chuyển đổi luật lũy thừa trong mã python xử lý hình ảnh

Vì vậy, vấn đề thực tế ở đâu và là gì?

Vấn đề thực tế phát sinh khi chúng ta hiển thị hình ảnh.

Bạn có thể ngạc nhiên khi biết rằng tất cả các thiết bị hiển thị như màn hình máy tính của bạn có cường độ với đường cong phản hồi điện áp, đó là một hàm nguồn với số mũ (gamma) thay đổi từ 1,8 đến 2,5.

Điều này có nghĩa là đối với bất kỳ tín hiệu đầu vào nào (giả sử từ máy ảnh), đầu ra sẽ được chuyển đổi bởi gamma (còn được gọi là gamma hiển thị) do cường độ phi tuyến tính với mối quan hệ điện áp của màn hình hiển thị. Điều này dẫn đến hình ảnh tối hơn dự định.Display Gamma) because of non-linear intensity to voltage relationship of the display screen. This results in images that are darker than intended.

Hướng dẫn power law transformation in image processing python code - chuyển đổi luật lũy thừa trong mã python xử lý hình ảnh

Để sửa chữa điều này, chúng tôi áp dụng hiệu chỉnh gamma cho tín hiệu đầu vào (chúng tôi biết mối quan hệ cường độ và điện áp mà chúng tôi chỉ cần thực hiện bổ sung) được gọi là gamma hình ảnh. Gamma này được tự động áp dụng bởi các thuật toán chuyển đổi như JPEG, v.v. Do đó, hình ảnh trông bình thường đối với chúng tôi.Image Gamma. This gamma is automatically applied by the conversion algorithms like jpeg etc. thus the image looks normal to us.

Đầu vào này hủy bỏ các hiệu ứng được tạo bởi màn hình và chúng ta thấy hình ảnh như nó là. Toàn bộ thủ tục có thể được tóm tắt như hình sau

Hướng dẫn power law transformation in image processing python code - chuyển đổi luật lũy thừa trong mã python xử lý hình ảnh

Nếu hình ảnh không được mã hóa gamma, chúng phân bổ quá nhiều bit cho các tông màu sáng mà con người không thể phân biệt và quá ít bit cho các tông màu tối. Vì vậy, bằng mã hóa gamma, chúng tôi loại bỏ vật phẩm này.

Hình ảnh không được sửa chữa đúng cách có thể trông có vẻ như bị tẩy trắng hoặc quá tối.

Hãy để xác minh bằng mã mà 1 dẫn đến hình ảnh tối hơn dự định

Nhập ASNP NUMPYnumpy asnp

Nhập CV2cv2

# Tải hình ảnh

img=cv2.imread('D:/downloads/forest.jpg')=cv2.imread('D:/downloads/forest.jpg')

# Áp dụng gamma = 2.2 trên hình ảnh được chuẩn hóa và sau đó nhân bằng cách chia tỷ lệ (cho 8 bit, c = 255)

gamma_two_point_two=np.array(255*(img/255)**2.2,dtype='uint8') =np.array(255*(img/255)**2.2,dtype='uint8')

# Tương tự, áp dụng gamma = 0,4

gamma_point_four=np.array(255*(img/255)**0.4,dtype='uint8')= np.array(255*(img/255)**0.4,dtype='uint8')

# Hiển thị hình ảnh trong các ô phụ

img3=cv2.hconcat([gamma_two_point_two,gamma_point_four])= cv2.hconcat([gamma_two_point_two,gamma_point_four])

cv2.imshow('a2',img3).imshow('a2',img3)

cv2.waitKey(0).waitKey(0)

Đầu ra trông như thế này

Hướng dẫn power law transformation in image processing python code - chuyển đổi luật lũy thừa trong mã python xử lý hình ảnh
Ảnh gốc

Hướng dẫn power law transformation in image processing python code - chuyển đổi luật lũy thừa trong mã python xử lý hình ảnh
Hình ảnh mã hóa gamma

Tôi hy vọng bạn hiểu mã hóa gamma. Trong blog tiếp theo, chúng tôi sẽ thảo luận về sự kéo dài tương phản, một chức năng chuyển đổi tuyến tính từng phần một cách chi tiết. Hy vọng bạn thích đọc sách.

Nếu bạn có bất kỳ nghi ngờ/đề xuất xin vui lòng hỏi và tôi sẽ cố gắng hết sức để giúp đỡ hoặc cải thiện bản thân. Tạm biệt cho đến lần sau.

Chuyển đổi luật quyền lực trong xử lý hình ảnh là gì?

Hình thức chung của chức năng chuyển đổi luật quyền lực (gamma) là.s = c*rγ trong đó, 's' và 'r' là các giá trị pixel đầu ra và đầu vào, tương ứng và 'c' và là các hằng số dương.s = c*rγ Where, 's' and 'r' are the output and input pixel values, respectively and 'c' and γ are the positive constants.

Sự khác biệt giữa chuyển đổi log và chuyển đổi luật điện là gì?

Sự khác biệt giữa chức năng chuyển đổi log và các hàm luật công suất là sử dụng hàm luật công suất, một họ các đường cong chuyển đổi có thể có thể thu được chỉ bằng cách thay đổi.using the power-law function a family of possible transformation curves can be obtained just by varying the λ.

Điều nào sau đây là đúng đối với chuyển đổi luật quyền lực?

Giải thích: Biến đổi luật công suất có dạng cơ bản: S = CRγ trong đó C và G là hằng số dương.s=crγ where c and g are positive constants.

Làm thế nào để tôi kéo dài một hình ảnh với độ tương phản trong Python?

Công thức cho độ tương phản kéo dài hoặc bình thường hóa hình ảnh..
Io = (ii-mini)*(((maxo-mino)/(maxi-mini))+mino).
IO - Giá trị pixel đầu ra ..
II - Giá trị pixel đầu vào ..
MINI - Giá trị pixel tối thiểu trong hình ảnh đầu vào ..
Maxi - Giá trị pixel tối đa trong hình ảnh đầu vào ..
MINO - Giá trị pixel tối thiểu trong hình ảnh đầu ra ..