Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python

Trước tiên tôi muốn chuyển đổi hình ảnh gốc (trong đó hình dạng và dtype là

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged
9) thành mảng 1D để tôi có thể nhập mảng 1D đó vào tập huấn luyện làm một quan sát.

Bây giờ tôi muốn chuyển đổi mảng 1D đó thành dạng ban đầu.

Để chuyển đổi hình ảnh gốc thành mảng 1D, tôi đã sử dụng hàm

# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate
0 có sẵn trong Numpy. Dưới đây là mã:

In[80]: t = misc.imread('b.png') #to read the image

In[81]: t.shape, t.dtype
Out[81]: ((1024, 1024, 3), dtype('uint8'))

#To convert the above image into 1D array

In[82]: t.flatten()
Out[82]: array([  5,  40, 121, ..., 130, 110,  89], dtype=uint8)

Bây giờ tôi muốn chuyển đổi ma trận trên (kết quả từ

# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate
1) thành ma trận gốc (tức là
# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate
2 trong hình dạng).

Xin vui lòng cho tôi biết tôi nên làm gì.

Cập nhật: Tôi đã kiểm tra hình dạng của

# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate
3 và nó xuất hiện

In[86]: p=t.flatten()
In[87]: p.shape
Out[86]:(6291456,) 

Nhưng 6291456 = (1024*1024*3*2). Bây giờ tôi bối rối rằng từ đâu trong thời hạn thêm này (tức là 2) xuất hiện.2). Now I am confused that from where does this extra term(i.e 2) comes out.

Tôi cũng đã sử dụng lệnh định hình lại nhưng lỗi xuất hiện khi tôi thực thi lệnh.

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged

Resizing Images là một phần không thể thiếu của web, cho dù hiển thị hình ảnh trên trang web hoặc ứng dụng của bạn, lưu trữ hình ảnh độ phân giải thấp hơn hoặc tạo bộ đào tạo cho các mạng thần kinh.

Python cung cấp một bộ tùy chọn phong phú để thực hiện một số tác vụ thay đổi kích thước hình ảnh thường xuyên. Bài viết này sẽ hướng dẫn bạn qua các tùy chọn đó và xem ImageKit-một giải pháp sẵn sàng, dựa trên đám mây, cung cấp thao tác hình ảnh thời gian thực.

Chúng tôi sẽ xem xét

  1. Thay đổi kích thước hình ảnh bằng gối
  2. Thay đổi kích thước hình ảnh bằng OpenCV
  3. Đơn giản hóa tất cả bằng cách sử dụng ImageKit, một sản phẩm tối ưu hóa hình ảnh hoàn chỉnh

Trước khi chúng tôi bắt đầu

Hãy chắc chắn rằng bạn có một phiên bản Python gần đây được cài đặt trên hệ thống của bạn, tốt nhất là Python 3.6+, sau đó quay một môi trường ảo.

# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate

Khi chúng tôi đến ImageKit sau trong bài viết này, bạn sẽ cần đăng ký tài khoản miễn phí trên trang web của ImageKit. Kế hoạch miễn phí có quyền truy cập vào tất cả các tính năng chúng tôi cần để thay đổi kích thước hình ảnh và các phép biến đổi khác.

Chúng tôi sẽ sử dụng một hình ảnh của Asad từ Pexels cho tất cả các ví dụ trong bài viết này. Hình ảnh này cũng được lưu trữ trên ImageKit.

https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg

Thay đổi kích thước hình ảnh bằng gối (PIL)

Gối là một trong những lựa chọn phổ biến nhất để thực hiện các nhiệm vụ thao tác hình ảnh cơ bản như cắt xén, thay đổi kích thước hoặc thêm hình mờ.

Cài đặt phiên bản mới nhất của Gối với

# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate
4.

Python3 -m pip install Pillow

Gối cung cấp phương thức Resize (), lấy một bộ (chiều rộng, chiều cao) làm đối số.


from PIL import Image

image = Image.open('sunset.jpg')
print(f"Original size : {image.size}") # 5464x3640

sunset_resized = image.resize((400, 400))
sunset_resized.save('sunset_400.jpeg')

Chúng tôi đọc hình ảnh của chúng tôi bằng phương pháp

# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate
5 từ mô -đun hình ảnh. Sau đó, chúng tôi sử dụng
# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate
6 với một tuple, đại diện cho chiều rộng và chiều cao của hình ảnh đầu ra, tương ứng, như một đối số chứa kích thước mới.

Đây là cách hình ảnh kích thước của chúng tôi trông như thế nào

Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python
Đầu ra của hình ảnh thay đổi kích thước

Duy trì tỷ lệ khung hình trong khi thay đổi kích thước

Phương pháp

# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate
6 khá tiện dụng và nhanh chóng để làm việc, nhưng nó không phải lúc nào cũng cho kết quả tốt nhất. Hình ảnh được thay đổi kích thước bằng phương pháp này có thể được kéo dài hoặc buộc phải lắp trong hộp và do đó bị sai lệch.

ImageKit làm cho nó dễ dàng thay đổi kích thước hình ảnh một cách lố bịch trong khi duy trì & nbsp; tỷ lệ khung hình. Xem cách ImageKit hoạt động để thay đổi kích thước.


Mặc dù phương pháp

# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate
8 có thể giải quyết vấn đề sai lệch, nhưng nó tạo ra phiên bản hình thu nhỏ của hình ảnh có kích thước không vượt quá các kích thước được chỉ định trong các đối số.

image.thumbnail((400, 400))image.save("sunset-aspect.jpeg")

Phương thức hình thu nhỏ thay đổi kích thước hình ảnh tại chỗ mà không trả lại một đối tượng hình ảnh. Do đó, hãy đảm bảo lưu tệp với một tên khác.

Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python
Hình ảnh được thay đổi kích thước phù hợp với hình thu nhỏ

Cắt một hình ảnh với gối

Phương pháp

# create virtual env
Python3 -m venv image-resize

# activate
source image-resize/bin/activate
9 được sử dụng để cắt hình ảnh chấp nhận 4-Tuple của tọa độ X và Y của góc trên bên trái và góc dưới bên phải của khu vực cây trồng.

Vì vậy, nếu chúng ta muốn cắt một hình ảnh từ điểm (300.300) xuống (700.900) điểm, mã sẽ là

# Crop the image
box = (300, 300, 700, 900)
cropped_image = image.crop(box)
cropped_image.save('cropped-image.jpg')

# 400x600 size of the image
print(cropped_image.size) 
Có một phương pháp dễ dàng hơn để sử dụng
https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
0. Phương thức
https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
1 chấp nhận hai đối số:
Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python

There is an easier method of using

https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
0. The
https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
1 method accepts two arguments:

  1. https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
    2 - Hình ảnh để cắt
  2. https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
    3 - chiều rộng của khu vực cần gỡ bỏ. Chiều rộng giống nhau được loại bỏ khỏi cả bốn mặt của hình ảnh.
from PIL import Image, ImageOps

image = Image.open('sunset.jpg')
cropped = ImageOps.crop(image, 600)
cropped.save("crop-imageops-600.jpg")

Dưới đây là hình ảnh mẫu của chúng tôi được cắt bằng 600px từ tất cả các phía.

Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python
Hình ảnh được cắt bằng gối

Bạn nên kiểm tra Sổ tay gối để biết các hoạt động hình ảnh phức tạp hơn.pillow handbook for more complex image operations.

Phần thưởng: Thêm hình mờ vào hình ảnh

Để thêm hình mờ, chúng ta cần sử dụng các phương pháp FenseDraw và ImageFont. Mô-đun ImageDraw cung cấp API sử dụng đơn giản để làm việc với đồ họa 2D, từ tạo đa giác đến viết văn bản. ImageFont đặt phông chữ của văn bản Watermark.

In[86]: p=t.flatten()
In[87]: p.shape
Out[86]:(6291456,) 
0

Hãy chắc chắn chọn một phông chữ có sẵn trên hệ thống của bạn. Bạn có thể đặt vị trí, điền, neo hoặc ngôn ngữ. Bạn cũng có thể tải xuống một phông chữ bạn chọn và cung cấp đường dẫn đến nó.

Đây là đầu ra mẫu -

Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python
Áp dụng một hình mờ đơn giản trên hình ảnh

Thay đổi kích thước hình ảnh bằng OpenCV


OpenCV là thư viện de-facto được sử dụng để thực hiện các tác vụ xử lý hình ảnh phức tạp như phát hiện khuôn mặt, biến đổi pixel và mô hình 3D. Nhưng, nó có thể thực hiện các nhiệm vụ chung hơn như thay đổi kích thước hình ảnh.

Đầu tiên, chúng ta hãy cài đặt OpenCV mới nhất cho Python bằng PIP.

In[86]: p=t.flatten()
In[87]: p.shape
Out[86]:(6291456,) 
1

Lưu ý rằng chúng tôi đang sử dụng OpenCV 4.5 cho hướng dẫn này.

https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
4 là tên của trình bao bọc Python.

Thay đổi kích thước với opencv

Mặc dù OpenCV là một lựa chọn khả thi để thay đổi kích thước hình ảnh, nhưng nó phù hợp nhất cho các nhiệm vụ hạng nặng như phát hiện đối tượng. Bám sát gối để thao tác hình ảnh cơ bản hoặc cuộn bên dưới để xem ImageKit làm điều đó như thế nào.

Thay đổi kích thước hình ảnh có thể được thực hiện bằng phương pháp

https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
5.

In[86]: p=t.flatten()
In[87]: p.shape
Out[86]:(6291456,) 
2

Cắt một hình ảnh với opencv

OpenCV sử dụng một mảng numpy dưới mui xe để thể hiện hình ảnh. Chúng ta có thể tận dụng việc cắt mảng để trích xuất một phần của pixel chúng ta cần, tức là, cắt hình ảnh.

Vì đây là một mảng 2D, chúng tôi cần chỉ định tọa độ bắt đầu và kết thúc, giống như chúng tôi đã làm trong khi cắt hình ảnh bằng gối. Mặc dù, cú pháp ở đây hơi khác nhau.

Nếu chúng ta muốn cắt một hình ảnh bắt đầu từ (0,0) điểm đến (2732, 3640), thì chúng ta có thể làm điều này với OpenCV như hình dưới đây

In[86]: p=t.flatten()
In[87]: p.shape
Out[86]:(6291456,) 
3

Bạn có thể đọc thêm về hướng dẫn xử lý hình ảnh từ OpenCV.image processing tutorials from OpenCV.

Sử dụng ImageKit để thay đổi kích thước và cắt hình ảnh

Cả Gối và OpenCV là những lựa chọn tốt để thay đổi kích thước và cắt hình ảnh. Nhưng các giải pháp này yêu cầu thiết lập và bảo trì rộng rãi phù hợp với nhu cầu kinh doanh thay đổi.

Đây có thể không phải là việc sử dụng tốt nhất thời gian của nhóm hoặc nhóm của bạn khi các công cụ như ImageKit.io có thể thực hiện cùng một công việc cho bạn với nỗ lực tối thiểu.

ImageKit.io là một sản phẩm tối ưu hóa, thao tác và lưu trữ hình ảnh và video thời gian thực có thể giúp bạn thực hiện thay đổi kích thước cơ bản và cắt xén hình ảnh của bạn và hơn thế nữa.

Bạn có tính linh hoạt để tải hình ảnh của mình lên thư viện phương tiện tích hợp hoặc đính kèm lưu trữ đám mây hoặc máy chủ hiện tại của bạn vào ImageKit và bắt đầu cung cấp các tệp được tối ưu hóa. Một số tối ưu hóa hình ảnh và video được thực hiện tự động, xem xét nhiều yếu tố, trong khi thay đổi kích thước, cắt xén và các phép biến đổi khác có thể được thực hiện bằng cách sửa đổi URL trong thời gian thực.

Thiết lập với ImageKit

Trong ví dụ của chúng tôi, chúng tôi đã tải hình ảnh mẫu lên ImageKit.

https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg

Bạn nên đăng ký một tài khoản miễn phí trên ImageKit đi kèm với số lượng lớn băng thông lưu trữ và phân phối. Bạn có thể tải xuống hình ảnh gốc từ các pexels từ đây và tải nó lên thư viện phương tiện của bạn.

Chúng tôi sẽ sử dụng SDK Python của ImageKit để tạo các URL hình ảnh được thay đổi kích thước và cắt. Bạn có thể cài đặt SDK này bằng lệnh sau -

In[86]: p=t.flatten()
In[87]: p.shape
Out[86]:(6291456,) 
5

Thay đổi kích thước cơ bản bằng cách thay đổi chiều cao và chiều rộng

Thay đổi kích thước hình ảnh trong ImageKit là đơn giản. Chỉ cần thêm chuyển đổi kích thước cần thiết vào URL và bạn sẽ nhận được hình ảnh thay đổi kích thước trong thời gian thực.

Ví dụ: để có được hình ảnh mẫu có chiều rộng 200px, URL sẽ là -

In[86]: p=t.flatten()
In[87]: p.shape
Out[86]:(6291456,) 
6Image được thay đổi kích thước theo chiều rộng 200px bằng các tham số chuyển đổi dựa trên URL

Mặc dù đây là một hoạt động nối chuỗi đơn giản, SDK Python làm cho mã đơn giản và có thể đọc được hơn.

In[86]: p=t.flatten()
In[87]: p.shape
Out[86]:(6291456,) 
7Ex ví dụ về việc tạo URL ở chiều rộng 200px với SDK Python

Tương tự, nếu chúng ta muốn nhận hình ảnh được thay đổi kích thước 400 x 300px từ ImageKit, URL sẽ chứa các tham số chuyển đổi chiều cao và chiều rộng.

In[86]: p=t.flatten()
In[87]: p.shape
Out[86]:(6291456,) 
8

Mã tương ứng với SDK Python sẽ

In[86]: p=t.flatten()
In[87]: p.shape
Out[86]:(6291456,) 
9

Có một số tùy chọn chuyển đổi hình ảnh khác với ImageKit. Bạn có thể đọc về chúng từ tài liệu sản phẩm hoặc từ tài liệu SDK Python.

Hình ảnh cắt xén với tỷ lệ khung hình cụ thể

Một chuyển đổi khác có sẵn trong ImageKit là chuyển đổi tỷ lệ khung hình. Bạn có thể sử dụng nó với độ rộng hoặc biến đổi chiều cao để sửa lỗi và biến đổi khung hình của hình ảnh đầu ra.

Ví dụ: để có được một hình ảnh ở chiều rộng 800px với tỷ lệ khung hình 4: 3, URL sẽ

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged
0

Các tùy chọn cắt xén có sẵn với ImageKit

Trong các ví dụ trên, nếu tỷ lệ khung hình đầu ra không khớp với tỷ lệ khung hình đầu vào, hình ảnh sẽ bị cắt xung quanh trung tâm của bản gốc theo mặc định.

Tuy nhiên, ImageKit cung cấp cho chúng tôi nhiều tùy chọn cắt xén có thể ngăn chặn việc cắt xén hình ảnh và giúp chúng tôi có được đầu ra cần thiết. Hãy xem xét một số tùy chọn cắt xén tiêu chuẩn dưới đây.

1. Không cắt xén - Buộc kích thước được yêu cầu

Bạn có thể làm điều này bằng cách thêm tham số chuyển đổi

https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
6 vào URL. Điều này sẽ buộc phù hợp với hình ảnh theo kích thước được yêu cầu. Mặc dù, vì đây là một lực phù hợp, nó có thể khiến hình ảnh bị sai lệch.

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged
1 Hình ảnh phù hợp với kích thước 400x200px
Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python
The image is force-fit to the 400x200px size

Trong SDK Python, điều này có thể được chỉ định bằng cách sử dụng chuyển đổi

https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
7

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged
2

2. Lắp bên trong một thùng chứa

Chiến lược cây trồng

https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
8 phù hợp với hình ảnh bên trong một thùng chứa có chiều cao và chiều rộng xác định trong khi bảo tồn tỷ lệ khung hình. Chiều cao hoặc chiều rộng của hình ảnh có thể khác với kích thước được yêu cầu và hình ảnh kết quả sẽ luôn nhỏ hơn các kích thước được chỉ định.

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged
3 Hình ảnh phù hợp bên trong hộp 400x200px
Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python
The image fits inside the 400x200px box

3. Lắp bên ngoài một thùng chứa

Đối diện với cây trồng

https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
8, cây trồng
Python3 -m pip install Pillow
0 dẫn đến một hình ảnh ít nhất là kích thước được chỉ định bằng cách sử dụng kích thước chiều cao và chiều rộng. Chiều cao hoặc chiều rộng của hình ảnh có thể khác với kích thước được yêu cầu và hình ảnh kết quả sẽ luôn lớn hơn các kích thước được chỉ định.

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged
4 Hình ảnh kết quả lớn hơn kích thước 400x200px được chỉ định
Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python
The resulting image is larger than the 400x200px dimension specified

4. Pad một hình ảnh

Nếu bạn vẫn muốn hình ảnh kết quả phù hợp với kích thước đầu ra được yêu cầu nhưng không được cắt, bạn có thể sử dụng chế độ cây trồng

Python3 -m pip install Pillow
1. Lưu ý rằng điều này khác với các phép biến đổi
https://ik.imagekit.io/ikmedia/python-resizing/sunset_SLoRHsWVo.jpg
7 được sử dụng ở trên và được chỉ định bằng cách sử dụng chuyển đổi
Python3 -m pip install Pillow
3. Bạn cũng có thể chỉ định màu đệm được thêm vào xung quanh hình ảnh bằng cách sử dụng chuyển đổi nền.

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged
5

URL kết quả là

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged
6Image với phần đệm sử dụng URL một tham số
Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python
Image with padding using URL a parameter

Bạn có thể thấy phần đệm màu xám xung quanh hình ảnh, hoàn toàn phù hợp với kích thước đầu ra 400 x 200px mà không cần cắt hình ảnh.

Phần thưởng: Thêm hình mờ vào hình ảnh bằng ImageKit

ImageKit cung cấp hơn 40 tham số chuyển đổi thời gian thực khác nhau cho hình ảnh.

Chúng tôi có thể sử dụng chúng để thêm cả lớp phủ hình ảnh và văn bản vào hình ảnh của chúng tôi và kiểm soát cách thức và nơi chúng được hiển thị trên hình ảnh của chúng tôi. Bạn có thể tham khảo tài liệu hoàn chỉnh Overlay ở đây.

Chúng ta hãy xem một ví dụ để thêm văn bản trên hình ảnh ở góc trên cùng bên trái của hình ảnh cơ sở của chúng tôi. Ở đây chúng tôi chỉ định văn bản, kích thước phông chữ của nó và màu phông chữ trong chính URL.

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged
7

URL hình ảnh kết quả là

l=p.reshape(1024,1024,3)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in ()
----> 1 l=p.reshape(1024,1024,3)

ValueError: total size of new array must be unchanged
8Adding Watermark cho hình ảnh với tham số URL & NBSP;
Hướng dẫn how to reshape the image in python - cách định hình lại hình ảnh trong python
Adding watermark to the image with a URL parameter 


Tương tự, chúng ta có thể thêm hình mờ hình ảnh hoặc kết hợp nhiều hình mờ ở các vị trí và kích thước khác nhau trên một hình ảnh trong thời gian thực. Bạn sẽ tìm thấy các ví dụ như vậy trong tài liệu cho lớp phủ và các phép biến đổi xích.

Sự kết luận

Đây là một bản tóm tắt nhanh chóng về những gì chúng ta đã học được ngày hôm nay. Chúng tôi đã xem xét ba cách khác nhau để thay đổi kích thước hình ảnh trong Python.

  • Gối cung cấp các phương pháp dễ sử dụng và có thể sử dụng để thực hiện các tác vụ thao tác hình ảnh cơ bản. Cẩm nang gối chứa các ví dụ về các hoạt động khác nhau mà bạn có thể thực hiện trên hình ảnh.
  • OpenCV cũng có thể thay đổi kích thước hình ảnh bằng tiện ích cv2.resize (), nhưng nó thường chậm hơn so với các phương thức có sẵn khác.
  • ImageKit là dịch vụ chuyển đổi hình ảnh dựa trên đám mây của bên thứ ba mà bạn có thể sử dụng để thao tác với hình ảnh theo quy mô bằng các tham số chuyển đổi dựa trên URL.

    Đăng ký ngay bây giờ để có kế hoạch miễn phí mãi mãi của ImageKit và bắt đầu thay đổi kích thước hình ảnh trong thời gian thực với nỗ lực tối thiểu.

Việc sử dụng định hình lại là gì (

Numpy Reshape (-1) Ý nghĩa.Trong numpy, -1 trong định hình lại (-1) đề cập đến một chiều không xác định mà hàm định hình lại () tính toán cho bạn.Nó giống như nói: Tôi sẽ để lại kích thước này cho hàm định hình lại () để xác định.Một trường hợp sử dụng phổ biến là làm phẳng một mảng lồng của một số phần tử không xác định thành một mảng 1D.to flatten a nested array of an unknown number of elements to a 1D array.

Thao tác hình ảnh trong Python là gì?

Numpy.Numpy là một trong những thư viện cốt lõi trong lập trình Python và cung cấp hỗ trợ cho các mảng.Một hình ảnh về cơ bản là một mảng numpy tiêu chuẩn chứa pixel của các điểm dữ liệu.Do đó, bằng cách sử dụng các hoạt động Numpy cơ bản, chẳng hạn như cắt, mặt nạ và lập chỉ mục ưa thích, chúng ta có thể sửa đổi các giá trị pixel của hình ảnh.slicing, masking, and fancy indexing, we can modify the pixel values of an image.