Học tập‎ > ‎C#‎ > ‎

Xử lý ảnh trong C#: Tạo hiệu ứng dập nổi (embossing)

    Lưu ý: Trong bài viết này có sử dụng class và hàm ờ bài viết Xử lý ảnh trong C#: Làm mịn hình ảnh bằng convolution . Bạn cần xem nó trước khi xem bài viết này.

 
Hiệu ứng dập nổi là một trong những hiệu hứng ấn tượng trong xử lý ảnh, đây cũng là phương pháp rất hiệu quả dùng để phát hiện các đường nét của hình ảnh.
Ma trận xử lý điểm ảnh ở phương pháp này có khác so với các phương pháp khác đó là nó là 1 offset của 127 và cố định trọng số điểm giữa là 4. Phần offset có tác dụng làm cho hình ảnh nổi lên trên màu nền xám.

Ma trận xử lý được dùng:
-1 0 -1
0 4 0
-1 0 -1
Code:
  1. public void ApplyEmboss(double weight)  
  2. {  
  3.     ConvolutionMatrix matrix = new ConvolutionMatrix(3);  
  4.     matrix.SetAll(1);  
  5.     matrix.Matrix[0, 0] = -1;  
  6.     matrix.Matrix[1, 0] = 0;  
  7.     matrix.Matrix[2, 0] = -1;  
  8.     matrix.Matrix[0, 1] = 0;  
  9.     matrix.Matrix[1, 1] = weight;  
  10.     matrix.Matrix[2, 1] = 0;  
  11.     matrix.Matrix[0, 2] = -1;  
  12.     matrix.Matrix[1, 2] = 0;  
  13.     matrix.Matrix[2, 2] = -1;  
  14.     matrix.Factor = 4;  
  15.     matrix.Offset = 127;  
  16.     bitmapImage = Convolution3x3(bitmapImage, matrix);  
  17.   
  18. }  
Embossing

Hình ảnh sau khi áp dụng hiệu ứng dập nổi



dịch từ: http://www.smokycogs.com
Comments