Hướng dẫn how do i convert an array to an image in python? - làm cách nào để chuyển đổi một mảng thành một hình ảnh trong python?

Trong bài viết này, chúng ta sẽ học cách chuyển đổi một mảng numpy thành một hình ảnh trong Python.

Mục lục

  • Làm thế nào các hình ảnh được lưu trữ trong một máy tính?
  • Chuyển đổi mảng numpy sang hình ảnh bằng cách sử dụng từ rangray () từ thư viện gối
  • Chuyển đổi mảng numpy thành hình ảnh bằng iMsave () từ matplotlib.pyplot
  • Chuyển đổi mảng numpy thành hình ảnh bằng Imwrite () từ mô -đun ImageIO
  • Chuyển đổi mảng numpy thành hình ảnh bằng cách sử dụng iMwrite () từ mô -đun opencv

Đưa ra một mảng numpy, chúng ta cần chuyển đổi nó thành một hình ảnh trong Python.

Làm thế nào các hình ảnh được lưu trữ trong một máy tính?

Chuyển đổi mảng numpy sang hình ảnh bằng cách sử dụng từ rangray () từ thư viện gối

Chuyển đổi mảng numpy thành hình ảnh bằng iMsave () từ matplotlib.pyplot

Chuyển đổi mảng numpy thành hình ảnh bằng Imwrite () từ mô -đun ImageIO

Chuyển đổi mảng numpy sang hình ảnh bằng cách sử dụng từ rangray () từ thư viện gối

Chuyển đổi mảng numpy thành hình ảnh bằng iMsave () từ matplotlib.pyplot

Chuyển đổi mảng numpy thành hình ảnh bằng Imwrite () từ mô -đun ImageIO

Chuyển đổi mảng numpy thành hình ảnh bằng cách sử dụng iMwrite () từ mô -đun opencv

random.randint(low, high=None, size=None, dtype=int)
  • Parameters:
    • Đưa ra một mảng numpy, chúng ta cần chuyển đổi nó thành một hình ảnh trong Python.
    • Các hình ảnh đen trắng thông thường được biểu thị bằng ma trận. Trong đó mỗi ô trong ma trận đại diện cho một pixel và màu pixel có màu đen hoặc trắng. Giá trị trong ô biểu thị cường độ của màu, giống như 0 là dành cho màu đen và 255 là dành cho màu trắng. Cường độ màu thay đổi với các số trong ô. Vì vậy, chúng tôi sẽ tạo một mảng numpy với kích thước là (144 x 144) và điền nó bằng các giá trị ngẫu nhiên trong khoảng từ 0 đến 255. Sau đó, chúng tôi sẽ chuyển đổi mảng 2D này thành một hình ảnh.
    • Có nhiều cách để chuyển đổi một mảng numpy thành một hình ảnh trong Python. Hãy thảo luận về tất cả các phương pháp từng một với cách tiếp cận phù hợp và ví dụ về mã làm việc
    • Quảng cáo
  • Returns:
    • Thư viện gối có một mô -đun hình ảnh. Mô -đun hình ảnh này cung cấp một phương thức FromArray (), để chuyển đổi mảng thành bất kỳ định dạng hình ảnh nào. Chúng tôi sẽ tạo ra một Aarray 2D và sẽ chuyển mảng đó cho phương thức FromArray ().

Hãy để một cái nhìn nhanh về các chức năng mà chúng ta sẽ sử dụng trong ví dụ này,

PIL.Image.fromarray(Array)
  • Parameters:
    • Cú pháp của randint ()
  • Returns:
    • thấp = giá trị ít nhất của số ngẫu nhiên sẽ được tạo.

cao = giá trị cao nhất của số ngẫu nhiên sẽ được tạo.

Image.save(fp)
  • Parameters:
    • size = điều này chỉ định hình dạng của mảng numpy sẽ được tạo
  • Returns:
    • DTYPE = Kiểu dữ liệu của mảng, theo mặc định, nó là int.

Trả về một mảng numpy chứa đầy các số ngẫu nhiên

  1. Cú pháp của FromArray ()
  2. Mảng = mảng cần được chuyển đổi thành hình ảnh.
  3. Trả về một đối tượng hình ảnh.

Cú pháp của Save ()

from PIL import Image
import numpy as np

# Creating the 144 X 144 NumPy Array with random values
arr = np.random.randint(255, size=(144, 144), dtype=np.uint8)

# Converting the numpy array into image
img  = Image.fromarray(arr)

# Saving the image
img.save("Image_from_array.png")

print(" The Image is saved successfully")

Output:

fp = tên hoặc đường dẫn của tệp hình ảnh sẽ được lưu.

Không có

Hướng dẫn how do i convert an array to an image in python? - làm cách nào để chuyển đổi một mảng thành một hình ảnh trong python?
Cách tiếp cận để chuyển đổi mảng numpy thành một hình ảnh:

Nhập thư viện Numpy và tạo mảng 2D Numpy bằng phương thức randint ().

Chuyển mảng này cho phương thức FromArray (). Điều này sẽ trả về một đối tượng hình ảnh.

Lưu hình ảnh vào hệ thống tập tin bằng phương thức Save ().

pip3 install Pillow

Chuyển đổi mảng numpy thành hình ảnh bằng iMsave () từ matplotlib.pyplot

Chuyển đổi mảng numpy thành hình ảnh bằng Imwrite () từ mô -đun ImageIO

Chuyển đổi mảng numpy thành hình ảnh bằng Imwrite () từ mô -đun ImageIO

Chuyển đổi mảng numpy thành hình ảnh bằng cách sử dụng iMwrite () từ mô -đun opencv

matplotlib.pyplot.imsave(fp, Array)
  • Parameters:
    • Cú pháp của randint ()
    • thấp = giá trị ít nhất của số ngẫu nhiên sẽ được tạo.
  • Returns:
    • DTYPE = Kiểu dữ liệu của mảng, theo mặc định, nó là int.

Trả về một mảng numpy chứa đầy các số ngẫu nhiên

  1. Cú pháp của FromArray ()
  2. Mảng = mảng cần được chuyển đổi thành hình ảnh.
  3. Trả về một đối tượng hình ảnh.

Cú pháp của Save ()

import matplotlib.pyplot as mp
import numpy as np

# Creating the 144 X 144 NumPy Array with random values
arr = np.random.randint(255, size=(144, 144),dtype=np.uint8)

# Converting the NumPy Array into an image
mp.imsave("Image_from_array.png", arr)

print(" The Image is saved successfully ")

Output:

The Image is saved successfully 

Không có

Hướng dẫn how do i convert an array to an image in python? - làm cách nào để chuyển đổi một mảng thành một hình ảnh trong python?
Cách tiếp cận để chuyển đổi mảng numpy thành một hình ảnh:

Nhập thư viện Numpy và tạo mảng 2D Numpy bằng phương thức randint ().

PIL.Image.fromarray(Array)
0

Chuyển mảng này cho phương thức FromArray (). Điều này sẽ trả về một đối tượng hình ảnh.

PIL.Image.fromarray(Array)
1

Chuyển đổi mảng numpy thành hình ảnh bằng Imwrite () từ mô -đun ImageIO

Lưu hình ảnh vào hệ thống tập tin bằng phương thức Save ().

Mã nguồn

PIL.Image.fromarray(Array)
2
  • Parameters:
    • Cú pháp của randint ()
    • thấp = giá trị ít nhất của số ngẫu nhiên sẽ được tạo.
  • Returns:
    • DTYPE = Kiểu dữ liệu của mảng, theo mặc định, nó là int.

Trả về một mảng numpy chứa đầy các số ngẫu nhiên

  1. Cú pháp của FromArray ()
  2. Mảng = mảng cần được chuyển đổi thành hình ảnh.
  3. Trả về một đối tượng hình ảnh.

Cú pháp của Save ()

PIL.Image.fromarray(Array)
3

Output:

PIL.Image.fromarray(Array)
4

Không có

Hướng dẫn how do i convert an array to an image in python? - làm cách nào để chuyển đổi một mảng thành một hình ảnh trong python?
Cách tiếp cận để chuyển đổi mảng numpy thành một hình ảnh:

Nhập thư viện Numpy và tạo mảng 2D Numpy bằng phương thức randint ().

PIL.Image.fromarray(Array)
5

Chuyển mảng này cho phương thức FromArray (). Điều này sẽ trả về một đối tượng hình ảnh.

PIL.Image.fromarray(Array)
6

Chuyển đổi mảng numpy thành hình ảnh bằng cách sử dụng iMwrite () từ mô -đun opencv

Mô -đun OpenCV cung cấp phương thức imwrite () để chuyển đổi mảng thành bất kỳ định dạng hình ảnh nào. Chúng tôi sẽ tạo một mảng numpy và chuyển mảng cho phương thức imwrite ()

Cú pháp của imwrite ()

PIL.Image.fromarray(Array)
7
  • Parameters:
    • Mảng = mảng cần được chuyển đổi thành hình ảnh.
    • fp = tên hoặc đường dẫn để lưu hình ảnh.
  • Returns:
    • Không có

Cách tiếp cận để chuyển đổi mảng numpy thành một hình ảnh:

  1. Nhập thư viện Numpy và tạo mảng numpy bằng phương thức randint ().
  2. Chuyển mảng này cho phương thức imwrite ().
  3. Hình ảnh sẽ được lưu vào đường dẫn được đề cập trong phương thức.

Mã nguồn

PIL.Image.fromarray(Array)
8

Output:

PIL.Image.fromarray(Array)
4

Nó sẽ tạo một tệp hình ảnh có tên là Image Image_From_Array.png 'trong cùng một thư mục. Tệp hình ảnh sẽ như thế này,

Hướng dẫn how do i convert an array to an image in python? - làm cách nào để chuyển đổi một mảng thành một hình ảnh trong python?
Hình ảnh được tạo từ một mảng 2d numpy

Có thể bạn có thể gặp lỗi, nếu mô-đun OpenCV-Python không được cài đặt. Giống,

Image.save(fp)
0

Sau đó sử dụng lệnh sau để cài đặt mô-đun OpenCV-Python,

Image.save(fp)
1

Bản tóm tắt

Tuyệt quá! Bạn đã thực hiện nó, chúng tôi đã thảo luận về tất cả các phương pháp có thể để chuyển đổi một mảng numpy thành một hình ảnh trong Python. Học hỏi hạnh phúc.