Thêm tiêu đề vào hình ảnh python

Trong bài viết này, chúng ta sẽ nghiên cứu các cách khác nhau để bạn có thể đọc và hiển thị hình ảnh trong Python. Chúng ta có thể đạt được điều này bằng nhiều cách. Nguyên nhân là do kho thư viện hỗ trợ phong phú. Chúng tôi cũng sẽ khám phá cách chúng tôi có thể sử dụng chúng trong việc lai tạo với nhau

Cách hiển thị hình ảnh bằng Python

Sau đây là danh sách các thư viện của Python giúp chúng ta xử lý ảnh và thực hiện các tác vụ tương ứng

  1. OpenCV
  2. Matplotlib
  3. Cái gối
  4. Hình ảnh Scikit
  5. dòng chảy căng

Bây giờ chúng ta hãy xem cách hiển thị hình ảnh trong cửa sổ GUI Python một cách dễ dàng. Có thể có nhiều mô-đun và/hoặc thủ thuật khác để xem hình ảnh, vì vậy đừng giới hạn bản thân chỉ với 5 mô-đun này

1. OpenCV để hiển thị hình ảnh trong Python

Đây là một gói rất nổi tiếng, thân thiện với người mới bắt đầu và mã nguồn mở và mạnh mẽ, chịu trách nhiệm xử lý hình ảnh. Với một nhóm lệnh nhỏ, chúng ta có thể đưa hành trình Thị giác máy tính của mình lên một tầm cao mới. Có hai chức năng chính mà OpenCV cung cấp để đọc và hiển thị hình ảnh

  1. cv2. imread[]
  2. cv2. imshow[]

Mã số

import sys # to access the system
import cv2
img = cv2.imread["sheep.png", cv2.IMREAD_ANYCOLOR]

while True:
    cv2.imshow["Sheep", img]
    cv2.waitKey[0]
    sys.exit[] # to exit from all the processes

cv2.destroyAllWindows[] # destroy all windows

đầu ra

Hiển thị hình ảnh thông qua OpenCV

Giải trình

  1. Nhập gói OpenCV để truy cập các chức năng. Ngoài ra, hãy nhập mô-đun sys cho các gói bổ sung
  2. Tạo một biến dưới dạng img chứa hình ảnh của chúng tôi. Gọi cv2. imread[] và phân phối đường dẫn hình ảnh/tên hình ảnh dưới dạng tham số đầu tiên. Sau đó, đặt cv2. IMREAD_ANYCOLOR là tham số tiếp theo để đọc mọi màu của hình ảnh
  3. Sau đó, đặt vòng lặp while và điều đó sẽ giúp chúng tôi hiển thị hình ảnh vô số lần cho đến khi chúng tôi thoát khỏi hệ thống
  4. Sau đó, sử dụng cv2. imshow[] bên trong vòng lặp while. Nó nhận hai tham số, tiêu đề hình ảnh và biến đường dẫn hình ảnh img
  5. Cv2. phương thức waitkey[] đợi cho đến khi chúng ta thoát hoặc nhấp vào nút đóng
  6. Sau đó gọi hệ thống. exit[] để thoát khỏi kỹ thuật một cách an toàn
  7. Cuối cùng, chúng tôi hủy tất cả các cửa sổ đã tạo bằng cách sử dụng cv2. tiêu diệtAllWindows[]

2. Matplotlib

Gói này chủ yếu để trực quan hóa dữ liệu. Tuy nhiên, thông qua các kỹ thuật vẽ đồ thị, chúng ta có thể xem hình ảnh ở định dạng đồ họa trong đó mỗi pixel nằm trên các trục x-y 2D

Thư viện này cũng có các chức năng tương đương với open cv. Chỉ tên gói thay đổi

  1. matplotlib. hình ảnh. imread[]
  2. matplotlib. pyplot. imshow[]

Mã số

from matplotlib import pyplot as plt
from matplotlib import image as mpimg

plt.title["Sheep Image"]
plt.xlabel["X pixel scaling"]
plt.ylabel["Y pixels scaling"]

image = mpimg.imread["sheep.png"]
plt.imshow[image]
plt.show[]

đầu ra

Hiển thị hình ảnh qua Matplotlib

Giải trình

  1. Nhập các mô-đun pylot và hình ảnh của gói Matplotlib
  2. Đặt tiêu đề của hình ảnh là Hình ảnh con cừu bằng cách sử dụng plt. phương thức title[]
  3. Khi matplotlib đọc hình ảnh trong mặt phẳng x-y. Chúng ta cần các hàm xlabel[] và ylabel[] để đề cập đến các trục và pixel
  4. Tạo một biến dưới dạng hình ảnh chứa hình ảnh của chúng tôi. Gọi mpimg. imread[] và cung cấp đường dẫn hình ảnh/tên hình ảnh làm tham số đầu tiên
  5. Sau đó, đặt vòng lặp while và điều đó sẽ giúp chúng tôi hiển thị hình ảnh vô số lần cho đến khi chúng tôi thoát khỏi hệ thống
  6. Sau đó, sử dụng plt. hàm imshow[] lấy biến hình ảnh img. Nhưng nó sẽ hiển thị trong phần phụ trợ
  7. Để xem nó trên màn hình, hãy sử dụng plt. show[] và chúng tôi có hình ảnh của mình với các thông số được chia tỷ lệ chính xác trên màn hình

3. Cái gối

Thư viện này thường cung cấp các phương thức đơn giản để thao tác với Hình ảnh. Chúng ta có thể nói rằng nó là một thư viện chỉ dành cho hình ảnh vì tính đơn giản và khả năng thích ứng của nó. Các hàm chúng ta sẽ sử dụng là open[] và show[] từ mô-đun Image của PILLOW. Hành động này chỉ trong vòng ba dòng mã

Mã số

from PIL import Image
img = Image.open["sheep.png"]
img.show[]

đầu ra

Hiển thị hình ảnh qua PILLOW

Giải trình

  1. Nhập mô-đun Hình ảnh từ PIL
  2. Tạo một biến img rồi gọi hàm open[] trong đó. Đưa ra đường dẫn có tệp hình ảnh
  3. Gọi hàm show[] cùng với biến img thông qua toán tử dấu chấm “. ”
  4. Nó hiển thị hình ảnh thông qua ứng dụng Ảnh tích hợp trong hệ điều hành tương ứng của bạn

4. Hình ảnh Scikit

Scikit-Image là một mô-đun con của Scikit-Learn. Nó được xây dựng dựa trên Python và thư viện hỗ trợ Matplotlib, do đó nó có được một số chức năng của nó. Các phương thức tương tự như các gói trước mà chúng ta đã thấy trước đây

Mã số

from skimage import io

img = io.imread["sheep.png"]
io.imshow[img]

đầu ra

Hiển thị hình ảnh qua Skimage

5. dòng chảy căng

Đây là một thư viện Machine Learning mạnh mẽ, đặc biệt là từ Google. tập đoàn. Nó hoạt động trên các khía cạnh khác nhau của Machine Learning, Deep Learning và các khái niệm liên quan. Nó cũng có các bộ dữ liệu tích hợp để bắt đầu một hành trình không rắc rối về Khoa học dữ liệu và kỹ thuật ML. Nó hoạt động cụ thể trên lõi GPU CUDA của máy tính. Điều này làm cho việc đào tạo mô hình hiệu quả hơn và ít gây căng thẳng hơn cho CPU

Chúng tôi sẽ sử dụng thư viện này cùng với mô-đun Matplotlib. Bởi vì điều này làm cho hình ảnh vẽ và hiển thị dễ dàng hơn nhiều

Mã số

from warnings import filterwarnings
import tensorflow as tf
from tensorflow import io
from tensorflow import image
from matplotlib import pyplot as plt

filterwarnings["ignore"] 
tf_img = io.read_file["sheep.png"]
tf_img = image.decode_png[tf_img, channels=3]
print[tf_img.dtype]
plt.imshow[tf_img]
# plt.show[]

Giải trình

  1. Nhập TensorFlow. Sau đó, từ TensorFlow cũng nhập io và hình ảnh.  
  2. Nhập mô-đun pyplot của matplotlib cho mục đích vẽ biểu đồ
  3. [Không bắt buộc] cũng vậy, hãy sử dụng gói cảnh báo để tránh những cảnh báo không cần thiết
  4. Tạo một biến hình ảnh TensorFlow “tf_img” và gọi io. phương thức read_file[]. Đưa ra đường dẫn hình ảnh bên trong nó
  5. Nó được đọc dưới dạng tệp mặc định. Để xem nó dưới dạng hình ảnh, chúng ta cần sử dụng chức năng decode_png[] từ hình ảnh để hệ thống nhận dạng. Đảm bảo bạn sử dụng đúng chức năng quyết định. Chúng khác nhau đối với từng loại hình ảnh. Sử dụng kênh = 3. để sử dụng GPU mặc định
  6. Cuối cùng, hiển thị hình ảnh đã chụp qua plt. imshow[] phương pháp

đầu ra

Hiển thị hình ảnh thông qua Tensorflow và Matplotlib

Sự kết luận

Vì vậy, đây là những cách đáng kể khác nhau mà qua đó chúng ta có thể thực hiện xử lý ảnh. Python có rất nhiều tùy chọn cho từng tác vụ duy nhất. Bình luận phương pháp và thư viện nào bạn thích nhất mà chúng tôi đã triển khai trong bài viết này

Chủ Đề