Numpy là một thư viện toán học phổ biến và mạnh mẽ của Python. Nó cung cấp các hàm để tạo và thao tác với các mảng.
Trong Numpy, một ma trận là một mảng hai chiều. Một mảng đa chiều là một mảng có ba hoặc nhiều chiều.
Ma trận và mảng đa chiều
Một ma trận trong Numpy có thể được tạo bằng cách sử dụng hàm array(). Hàm này nhận đầu vào là một tập hợp dữ liệu và trả về một mảng.
Ví dụ, để tạo một ma trận 2×3, bạn có thể sử dụng mã sau:
import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6]]) print(arr) Đầu ra: [[1 2 3] [4 5 6]]
Một mảng đa chiều có thể được tạo bằng cách sử dụng hàm stack(). Hàm này nhận đầu vào là một danh sách các mảng và trả về một mảng đa chiều.
Ví dụ, để tạo một mảng 3x3x2, bạn có thể sử dụng mã sau:
import numpy as np arr1 = np.array([[1, 2], [3, 4]]) arr2 = np.array([[5, 6], [7, 8]]) arr = np.stack([arr1, arr2]) print(arr) Đầu ra: [[[1 2] [3 4]] [[5 6] [7 8]]]
Các thao tác trên mảng 3D, 4D
Các thao tác trên mảng 3D, 4D tương tự như các thao tác trên mảng 2D. Tuy nhiên, cần lưu ý đến các chiều của mảng khi thực hiện các thao tác.
Ví dụ, để truy cập một phần tử trong mảng 3D, bạn có thể sử dụng mã sau:
arr = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) print(arr[0, 1, 1]) Đầu ra: 4
Các hàm Numpy cũng hỗ trợ các thao tác trên mảng 3D, 4D. Ví dụ, để tính trung bình của các phần tử trong mảng 3D, bạn có thể sử dụng mã sau:
arr = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) mean = np.mean(arr) print(mean) Đầu ra: 4.0
Ứng dụng xử lý ảnh/video
Xử lý ảnh/video là một ứng dụng quan trọng của Numpy. Numpy có thể được sử dụng để thực hiện các thao tác như:
- Đọc và ghi ảnh/video
- Chuyển đổi định dạng ảnh/video
- Xử lý ảnh/video
- Chuyển đổi hình ảnh: Numpy có thể được sử dụng để chuyển đổi hình ảnh từ định dạng này sang định dạng khác, chẳng hạn như từ định dạng RGB sang định dạng grayscale.
- Chỉnh sửa hình ảnh: Numpy có thể được sử dụng để chỉnh sửa hình ảnh, chẳng hạn như thay đổi độ sáng, độ tương phản và độ bão hòa của hình ảnh.
- Phân tích hình ảnh: Numpy có thể được sử dụng để phân tích hình ảnh, chẳng hạn như phát hiện vật thể và nhận dạng khuôn mặt.
Ví dụ, để đọc một ảnh từ máy tính, bạn có thể sử dụng mã sau:
import numpy as np import cv2 img = cv2.imread("image.jpg") print(img) Đầu ra: [[[255 255 255] [255 255 255] ... [255 255 255]] [[255 255 255] [255 255 255] ... [255 255 255]] ... [[255 255 255] [255 255 255] ... [255 255 255]]]
Ví dụ, để chuyển đổi một hình ảnh từ định dạng RGB sang định dạng grayscale, bạn có thể sử dụng mã sau:
import numpy as np import cv2 # Đọc ảnh img = cv2.imread("image.jpg") # Chuyển đổi sang định dạng grayscale gray_img = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY) # Lưu ảnh cv2.imwrite("grayscale_image.jpg", gray_img)
Xử lý dữ liệu đa chiều trong Numpy là một chủ đề quan trọng. Các hàm Numpy cung cấp hỗ trợ mạnh mẽ cho xử lý dữ liệu đa chiều.
Kết luận
Xử lý dữ liệu đa chiều là một chủ đề quan trọng trong Numpy. Numpy cung cấp các hàm để tạo và thao tác với các mảng đa chiều, bao gồm ma trận và mảng 3D, 4D. Xử lý ảnh/video là một ứng dụng phổ biến của Numpy.
Nếu bạn là newbie có thể tham khảo bài viết này để tìm hiểu lộ trình học DA trong 3 tháng của SmartData.
Nếu bạn thấy bài viết hay và hữu ích, bạn có thể tham gia các kênh sau của SmartData để nhận được nhiều hơn nữa: