Hướng dẫn negative image opencv c++ - hình ảnh âm bản opencv c ++

Hình ảnh còn được gọi là một tập hợp các pixel. Khi chúng tôi lưu trữ một hình ảnh trong máy tính hoặc kỹ thuật số, nó có giá trị pixel tương ứng được lưu trữ. Vì vậy, khi chúng ta đọc một hình ảnh cho một biến bằng cách sử dụng openCV trong Python, biến lưu trữ các giá trị pixel của hình ảnh. Khi chúng ta cố gắng biến đổi một cách tiêu cực một hình ảnh, các khu vực sáng nhất được biến thành tối nhất và các khu vực tối nhất được biến thành sáng nhất.

Như chúng ta đã biết, một hình ảnh màu lưu trữ 3 kênh khác nhau. Chúng có màu đỏ, xanh lá cây và xanh dương. Đó là lý do tại sao hình ảnh màu còn được gọi là hình ảnh RGB. Vì vậy, nếu chúng ta cần một sự chuyển đổi tiêu cực của một hình ảnh thì chúng ta cần đảo ngược 3 kênh này.

Hãy cùng xem 3 kênh của một hình ảnh màu bằng cách vẽ nó trong biểu đồ.

Hình ảnh đầu vào -

import cv2

import matplotlib.pyplot as plt

Các

import0 import1import2 import3import4

Các

import0 import1import2 import3import4

cv227

Output:

import5matplotlib.pyplot as plt8cv21 cv220

import5cv222matplotlib.pyplot as plt3cv26matplotlib.pyplot as plt1matplotlib.pyplot as plt6

Ở đây, 3 kênh [đỏ, xanh lá cây, xanh dương] được chồng lên và tạo một biểu đồ duy nhất. Nếu bạn đã nghiên cứu về pixel và RGB trước đây, bạn có thể biết rằng mỗi màu chứa 256 giá trị. Nếu giá trị RGB của một màu là [255, 255, 255] thì màu đó được hiển thị dưới dạng màu trắng và nếu giá trị RGB của một màu là [0, 0, 0] thì màu đó được hiển thị dưới dạng màu đen. Như vậy, 3 kênh trên cũng chứa 256 số pixel.

Vì vậy, trục x hiển thị tổng cộng 256 giá trị [0-255] và trục y cho thấy tổng tần số của mỗi kênh. Như bạn có thể thấy trong biểu đồ, Kênh màu xanh có tần số cao nhất và bạn có thể dễ dàng đánh dấu lượng màu xanh có trong hình bằng cách nhìn vào nó.

Sự biến đổi tiêu cực của hình ảnh

  1. Hãy để tạo ra một sự chuyển đổi tiêu cực của hình ảnh. Có 2 cách khác nhau để chuyển đổi hình ảnh thành tiêu cực bằng mô -đun OpenCV. Phương pháp đầu tiên giải thích chuyển đổi âm từng bước và phương pháp thứ hai giải thích sự biến đổi âm của hình ảnh trong một dòng.
  2. Phương pháp đầu tiên: Các bước để chuyển đổi âm
  3. Đọc một hình ảnh
  4. Nhận chiều cao và chiều rộng của hình ảnh
  5. Mỗi pixel chứa 3 kênh. Vì vậy, hãy lấy giá trị pixel và thu thập 3 kênh trong 3 biến khác nhau.

Phủ định 3 pixel giá trị từ 255 và lưu trữ chúng một lần nữa trong pixel được sử dụng trước đó.

import cv2

import matplotlib.pyplot as plt

Các

cv219

cv227

import0 import1import2 import3import4

Các

matplotlib.pyplot as plt19cv260import9cv262

matplotlib.pyplot as plt19cv264matplotlib.pyplot as plt3cv26matplotlib.pyplot as plt1matplotlib.pyplot as plt6

import5cv222matplotlib.pyplot as plt3cv26matplotlib.pyplot as plt1matplotlib.pyplot as plt6

cv227

import5matplotlib.pyplot as plt8cv21 cv220

import5cv222matplotlib.pyplot as plt3cv26matplotlib.pyplot as plt1matplotlib.pyplot as plt6

Ở đây, 3 kênh [đỏ, xanh lá cây, xanh dương] được chồng lên và tạo một biểu đồ duy nhất. Nếu bạn đã nghiên cứu về pixel và RGB trước đây, bạn có thể biết rằng mỗi màu chứa 256 giá trị. Nếu giá trị RGB của một màu là [255, 255, 255] thì màu đó được hiển thị dưới dạng màu trắng và nếu giá trị RGB của một màu là [0, 0, 0] thì màu đó được hiển thị dưới dạng màu đen. Như vậy, 3 kênh trên cũng chứa 256 số pixel.

Vì vậy, trục x hiển thị tổng cộng 256 giá trị [0-255] và trục y cho thấy tổng tần số của mỗi kênh. Như bạn có thể thấy trong biểu đồ, Kênh màu xanh có tần số cao nhất và bạn có thể dễ dàng đánh dấu lượng màu xanh có trong hình bằng cách nhìn vào nó.

Sự biến đổi tiêu cực của hình ảnh

Hãy để tạo ra một sự chuyển đổi tiêu cực của hình ảnh. Có 2 cách khác nhau để chuyển đổi hình ảnh thành tiêu cực bằng mô -đun OpenCV. Phương pháp đầu tiên giải thích chuyển đổi âm từng bước và phương pháp thứ hai giải thích sự biến đổi âm của hình ảnh trong một dòng.

Phương pháp đầu tiên: Các bước để chuyển đổi âm

Đọc một hình ảnh

cv219

cv227

import0 import1import2 import3import4

Các

matplotlib.pyplot as plt19cv264matplotlib.pyplot as plt1cv293

matplotlib.pyplot as plt19cv264matplotlib.pyplot as plt3cv26matplotlib.pyplot as plt1matplotlib.pyplot as plt6

import5cv222matplotlib.pyplot as plt3cv26matplotlib.pyplot as plt1matplotlib.pyplot as plt6

cv227

import5matplotlib.pyplot as plt8cv21 cv220


Vì vậy, trục x hiển thị tổng cộng 256 giá trị [0-255] và trục y cho thấy tổng tần số của mỗi kênh. Như bạn có thể thấy trong biểu đồ, Kênh màu xanh có tần số cao nhất và bạn có thể dễ dàng đánh dấu lượng màu xanh có trong hình bằng cách nhìn vào nó.


Sự biến đổi tiêu cực của hình ảnh

Hãy để tạo ra một sự chuyển đổi tiêu cực của hình ảnh. Có 2 cách khác nhau để chuyển đổi hình ảnh thành tiêu cực bằng mô -đun OpenCV. Phương pháp đầu tiên giải thích chuyển đổi âm từng bước và phương pháp thứ hai giải thích sự biến đổi âm của hình ảnh trong một dòng.

  1. Phương pháp đầu tiên: Các bước để chuyển đổi âm
  2. Đọc một hình ảnh
  3. Nhận chiều cao và chiều rộng của hình ảnh

Mỗi pixel chứa 3 kênh. Vì vậy, hãy lấy giá trị pixel và thu thập 3 kênh trong 3 biến khác nhau.

import cv2

import matplotlib.pyplot as plt

Các

cv219

cv227

import0 import1import2 import3import4

import5import6cv21 import41

matplotlib.pyplot as plt19cv260import9cv262

matplotlib.pyplot as plt19cv264matplotlib.pyplot as plt1cv293

matplotlib.pyplot as plt19cv264matplotlib.pyplot as plt3cv26matplotlib.pyplot as plt1matplotlib.pyplot as plt6

import5matplotlib.pyplot as plt8cv21 cv220

import5cv222matplotlib.pyplot as plt3cv26matplotlib.pyplot as plt1matplotlib.pyplot as plt6

cv227

import67cv21 cv230 cv214 import71

import72

cv227

import0 import1import2 import3import4

import5import6cv21 import41

matplotlib.pyplot as plt19cv260import9import95

matplotlib.pyplot as plt19cv264matplotlib.pyplot as plt1cv293

matplotlib.pyplot as plt19cv264matplotlib.pyplot as plt3cv26matplotlib.pyplot as plt1matplotlib.pyplot as plt6

import5matplotlib.pyplot as plt8cv21 cv220

import5cv222matplotlib.pyplot as plt3cv26matplotlib.pyplot as plt1matplotlib.pyplot as plt6

cv227

import67cv21 cv230 cv214 import71


import5import6cv21 import91


Đầu ra:

Bài Viết Liên Quan

Chủ Đề