Làm cách nào để đọc đường dẫn hình ảnh trong Python?

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách đọc hoặc mở một hình ảnh bằng thư viện Gối và các tình huống khác nhau mà người dùng có thể gặp phải, với sự trợ giúp của các chương trình ví dụ

Các bước để đọc một hình ảnh bằng PIL

Để đọc một hình ảnh với thư viện Gối Python, hãy làm theo các bước sau

  1. Nhập hình ảnh từ thư viện PIL
  2. Sử dụng hình ảnh. open[] và chuyển đường dẫn đến tệp hình ảnh làm đối số. Hình ảnh. open[] trả về một đối tượng Image. Bạn có thể lưu trữ đối tượng hình ảnh này và áp dụng các thao tác hình ảnh trên nó

Trong hướng dẫn này, chúng ta sẽ học cách đọc hoặc mở một hình ảnh bằng gói PIL, với sự trợ giúp của các chương trình ví dụ

ví dụ 1. Đọc hình ảnh bằng PIL

Trong ví dụ sau, chúng ta sẽ đọc một hình ảnh bằng Image. hàm open[] của gói PIL

Chương trình Python

from PIL import Image

im = Image.open["sample-image.png"]

Hình ảnh. open[] trả về đối tượng của loại lớp PIL. Hình ảnh PngPlugin. Hình ảnh PngTập tin

Trong ví dụ này, tệp hình ảnh được đặt ở cùng vị trí với tệp ví dụ python. Nếu bạn muốn đọc một hình ảnh hiện tại ở vị trí khác, bạn nên cung cấp đường dẫn đầy đủ

Trong chương trình ví dụ sau, chúng tôi sẽ cung cấp đường dẫn đầy đủ của hình ảnh đầu vào

Chương trình Python

from PIL import Image

im = Image.open["D:/images/sample-image.png"]

ví dụ 2. Không tìm thấy hình ảnh – Kịch bản tiêu cực

Trong ví dụ này, chúng tôi sẽ mô phỏng một kịch bản, trong đó chúng tôi cung cấp một đường dẫn không hợp lệ tới Hình ảnh. mở ra[]. Nói cách khác, tệp không tồn tại ở đường dẫn chúng tôi cung cấp

Chương trình Python

from PIL import Image

im = Image.open["D:/images/no-image.png"]

Vì tệp hình ảnh không có tại vị trí, Hình ảnh. open[] ném FileNotFoundError

đầu ra

Traceback [most recent call last]:
  File "d:/workspace/example.py", line 3, in 
    im = Image.open["D:/images/sample-image.png"]
  File "C:\Users\pythonexamplesorg\AppData\Local\Programs\Python\Python37\lib\site-packages\PIL\Image.py", line 2652, in open
    fp = builtins.open[filename, "rb"]
FileNotFoundError: [Errno 2] No such file or directory: 'D:/images/sample-image.png'

ví dụ 2. Đọc hình ảnh – Không có tiện ích mở rộng

Trong ví dụ này, chúng tôi sẽ cố gắng đọc một hình ảnh không có phần mở rộng. Chúng tôi không chỉ định phần mở rộng của hình ảnh, nếu đó là JPG, PNG, v.v.

Chương trình Python

from PIL import Image

im = Image.open["D:/sample"]

Hình ảnh. open[] tìm ra codec của hình ảnh bằng cách sử dụng dữ liệu và siêu dữ liệu có trong nội dung của hình ảnh

Thao tác tệp trong PIL rất đơn giản và phản ánh các phương thức Python thông thường

import Image

img = Image.open[filepath]

from PIL import Image

img = Image.open["path/to/image.ext"]
pixels = img.load[] # Load the pixels of the image into a matrix

Hiển thị một bản sao của hình ảnh được chỉ định trong một cửa sổ

from PIL import Image

img = Image.open["path/to/image.ext"]

img.show[] # Shows the image in a new window

________số 8_______

Bài đăng này sẽ hiển thị các cách hiển thị ảnh khác nhau trong Python. Các tùy chọn chúng ta sẽ khám phá là

  1. PIL [Thư viện hình ảnh Python]
  2. OpenCV [Thư viện thị giác máy tính]
  3. IPython
  4. Thư viện Matplotlib

Phương pháp 1. PIL [Thư viện hình ảnh Python]

PIL là thư viện tiêu chuẩn để quản lý hình ảnh trong Python. Họ đã ngừng dự án vào năm 2011, nhưng một dự án mới có tên là Gối đã tiếp quản như một ngã ba GitHub của dự án ban đầu. Thư viện này có rất nhiều phương thức để hiển thị, thay đổi hoặc lưu trữ hình ảnh

Chúng tôi có thể đọc và viết ở các định dạng khác nhau;

Chúng ta cần cài đặt Gối trước. Chúng tôi sử dụng câu sau trong dấu nhắc lệnh

pip install Pillow

Chúng ta có thể nhập mã tiếp theo vào bảng điều khiển Python hoặc bên trong tệp Python [phần mở rộng .py]

#importing the Image class from PIL package
from PIL import Image

#read the image, creating an object
im = Image.open[r"D:\Open Picture Python\picture-1.jpg"]

#show picture
im.show[]

Sau khi thực thi mã này, ứng dụng Ảnh mặc định trong Windows sẽ mở ra để hiển thị ảnh

Phương pháp 2. OpenCV [Thư viện thị giác máy tính]

Thị giác máy tính là lĩnh vực Trí tuệ nhân tạo cho phép máy tính lấy thông tin từ hình ảnh, video và các nguồn khác tương tự như con người

Các ứng dụng của Computer Vision là Xe tự lái, Nhận dạng khuôn mặt, Chẩn đoán y tế, Sản xuất hoặc Luật

OpenCV [Open Computer Vision] là thư viện phần mềm Thị giác nhân tạo và Máy học mã nguồn mở

Hỗ trợ NumPy [thư viện làm việc với mảng] giúp làm việc với OpenCV dễ dàng hơn

Chúng tôi cũng có thể sử dụng thư viện này để hiển thị hình ảnh theo cách sau

Cài đặt thư viện thực thi lệnh này trong bảng điều khiển

pip install opencv-python

Để hiển thị hình ảnh, chúng ta có thể sử dụng đoạn mã sau

#import the cv2 module.
import cv2 as cv

#imread method loads the image. We can use a relative path if 
#picture and python file are in the same folder
img = cv.imread['beach-resort-1395730.jpg']

#method resize is used to modify de size of the picture
imS = cv.resize[img, [960, 540]]

#We use imshow method to show the picture
cv.imshow['Picture of trees',imS]

#If we don’t use the waitKey method, picture
#show and disappears immediately.
cv.waitKey[0]

#destroyallwindows used to free up resources
cv.destroyAllWindows[]

Chúng tôi nhận được cửa sổ sau với hình ảnh khi chúng tôi chạy mã này. Nó sẽ được đóng lại khi chúng ta nhấn một phím hoặc đóng cửa sổ

Phương pháp 3. IPython

Nếu chúng tôi đang làm việc với Jupyter Notebook, chúng tôi có thể sử dụng thư viện IPython để hiển thị ảnh bên trong sổ ghi chép

Jupyter Notebook là một môi trường tương tác nơi chúng ta có thể viết và thực thi các lệnh Python mà không cần lưu lệnh đó vào tệp. Jupyter chứa rất nhiều công cụ hướng đến Khoa học dữ liệu

Các tài liệu sổ tay này có thể chứa mã, văn bản được định dạng, phương trình, đồ thị, hình ảnh, v.v.

IPython là một trình thông dịch tương tác Python và một thư viện có nhiều chức năng, bao gồm cả những chức năng để hiển thị hình ảnh

Hãy xem một ví dụ về việc sử dụng IPython bên trong sổ ghi chép Jupyter trong hình ảnh sau

Phương pháp 4. Thư viện Matplotlib

Matplotlib là một thư viện để tạo các hình ảnh tĩnh, hoạt hình và tương tác trong Python. Chúng tôi có thể lập các lô rất chi tiết rất nhanh. Và chúng ta cũng có thể sử dụng nó để hiển thị một bức tranh. Nó được xây dựng trên các mảng NumPy và được thiết kế để hoạt động với SciPy [thư viện dành cho máy tính khoa học và kỹ thuật]. Hãy xem cách thực hiện

Để sử dụng thư viện này, chúng ta phải cài đặt nó trước bằng lệnh sau trong dấu nhắc của windows

Để sử dụng thư viện, chúng ta có thể tạo một tệp python với đoạn mã sau bên trong

#We have to import pyplot and image packages.
import matplotlib.pyplot as plt
import matplotlib.image as mpimg

#Read the image we have to show. We should write the 
#full path if the picture is not in the same directory
as the .py file
img = mpimg.imread['image-1.jpg']

#this function imshow displays data as an image
imgplot = plt.imshow[img]

#show the picture
plt.show[]

Sau khi lưu mã, chúng tôi chạy nó và chúng tôi nhận được mã tiếp theo

Vì matplotlib được định hướng để hiển thị các mảng 2d, nên chúng tôi có các trục được hiển thị theo mặc định. Nếu chúng ta muốn loại bỏ chúng, chúng ta cần thêm mã tiếp theo

plt.axis['off']

Như chúng ta có thể thấy trước đây, chúng ta có nhiều tùy chọn để hiển thị hình ảnh bằng Python. Sử dụng cái này hay cái khác là một câu hỏi về sở thích cá nhân hoặc kiến ​​​​thức trước đây. Chúng tôi có thể điều tra thêm trên các trang web chính thức được cung cấp

Làm cách nào để đọc hình ảnh từ URL trong Python?

Trong bài viết này, chúng ta sẽ tìm hiểu Cách mở hình ảnh từ URL bằng mô-đun PIL trong python. .
Sao chép URL của bất kỳ hình ảnh nào
Viết URL với tên tệp trong urllib. lời yêu cầu. phương thức urlretrieve[]
Sử dụng hình ảnh. phương thức open[] để mở hình ảnh
Cuối cùng, hiển thị hình ảnh bằng obj. phương thức hiển thị []

Làm cách nào để đọc dữ liệu từ hình ảnh trong Python?

Thư viện Python . Tức là nó sẽ nhận dạng và “đọc” chữ nhúng trong hình ảnh. Python-tesseract là một trình bao bọc cho Công cụ Tesseract-OCR của Google. Python-tesseract is an optical character recognition [OCR] tool for python. That is, it will recognize and “read” the text embedded in images. Python-tesseract is a wrapper for Google's Tesseract-OCR Engine.

Làm cách nào để đọc hình ảnh từ một thư mục trong Python bằng Matplotlib?

Cách mạch lạc hơn để làm điều này là. .
sử dụng dir[] để lấy tất cả các tên hình ảnh thành một biến. Ví dụ: images = dir[path] Images sẽ chứa tất cả tên của các hình ảnh trong thư mục của bạn được trỏ đến bởi đường dẫn của bạn
Sau đó lặp qua các hình ảnh như vậy. cho hình ảnh trong hình ảnh. cong_img =mpimg. imread[hình ảnh]

Chúng ta có thể đọc hình ảnh bằng Python không?

Sử dụng ImageIO. Imageio là thư viện Python cung cấp giao diện dễ đọc và ghi nhiều loại dữ liệu hình ảnh , bao gồm hình ảnh động, video, dữ liệu thể tích và dữ liệu khoa học . Nó là đa nền tảng, chạy trên Python 3. 7+ và rất dễ cài đặt.

Chủ Đề