Làm cách nào để chuyển đổi đối tượng bề mặt trong pygame thành mảng giá trị RGB 2 chiều (một giá trị cho mỗi pixel)? Tôi đã đọc tài liệu về PixelArrays và Surfarrays và tôi dường như không thể tìm thấy câu trả lời cho câu hỏi của mình. Ví dụ sau đó được chào đón nhiều hơn.Chuyển đổi hình ảnh trong pygame thành mảng giá trị RGB 2D
Trả lời
Các pygame documentation nói rằng đưa một đối tượng bề mặt, bạn có thể tạo một wrapper PixelArray
để cung cấp trực tiếp truy cập mảng 2D sang pixel của nó bằng cách gọi phương pháp PixelArray()
của mô-đun như thế này:
pxarray = pygame.PixelArray(surface)
Logic một PixelArray
đối tượng là mảng 2 chiều của các giá trị RGB được lưu trữ dưới dạng số nguyên.
Một mục
PixelArray
điểm ảnh có thể được gán một giá trị số nguyên liệu, mộtpygame.Color
dụ (một đối tượng cho cơ quan đại diện màu), hoặc một(r, g, b[, a])
tuple.pxarray[x, y] = 0xFF00FF pxarray[x, y] = pygame.Color(255, 0, 255) pxarray[x, y] = (255, 0, 255)
Nó cũng đề cập:
Tuy nhiên, giá trị số nguyên duy nhất của một điểm ảnh được trả về. Do đó, để so sánh pixel với màu cụ thể, màu cần được ánh xạ đầu tiên bằng cách sử dụng phương thức
Surface.map_rgb()
của đối tượngSurface
được tạoPixelArray
.
Có nghĩa là bạn sẽ cần phải sử dụng phương pháp Surface.map_rgb()
để có được bộ dữ liệu RGB từ PixelArray
giá trị số nguyên bất cứ khi nào bạn không làm một bài tập để các mảng, tức là khi đọc giá trị của một pixel, như đang được thực hiện trong điều kiện sau đây:
# Check, if the first pixel at the topleft corner is blue
if pxarray[0, 0] == surface.map_rgb((0, 0, 255)):
...
Hy vọng điều này sẽ hữu ích.
- 1. Chuyển đổi hình ảnh sang một mảng RGB trong Javascript
- 2. chuyển đổi mảng 2D thành mảng 2D thành
- 3. cách chuyển đổi giá trị màu RGB thành giá trị thập lục phân trong C++?
- 4. Làm thế nào tôi có thể đọc các giá trị của pixel ảnh dưới dạng RGB thành mảng 2d?
- 5. Chuyển đổi giá trị RGB thành Số nguyên
- 6. Chuyển đổi hình ảnh 2d thành mô hình 3d
- 7. làm thế nào để chuyển đổi một hình ảnh RGB thành mảng numpy?
- 8. Làm thế nào để chuyển đổi mảng nổi 2D thành mảng 2D thành mảng numpy?
- 9. Chuyển đổi hình ảnh thành ma trận trong python
- 10. Chuyển đổi mảng 1D thành mảng 2D theo dạng số
- 11. Chuyển đổi mảng 2D thành mảng có cấu trúc
- 12. Chuyển đổi một mảng 2D thành một mảng 1D
- 13. chuyển đổi mảng 2D thành con trỏ thành con trỏ
- 14. NumPy hình ảnh 3D mảng 2D
- 15. Chuyển đổi RGBA bằng màu cơ bản thành RGB?
- 16. Chuyển đổi giá trị màu nguyên sang RGB
- 17. Chuyển đổi RGB thành Đen trắng trong OpenCV
- 18. OpenCV hình ảnh chuyển đổi từ RGB để HSV
- 19. Chuyển đổi RGB thành Grayscale trong dòng lệnh ImageMagick
- 20. làm thế nào để chuyển đổi danh sách 2d thành mảng 2d?
- 21. Chuyển đổi các giá trị từ điển thành mảng
- 22. Làm thế nào để chuyển đổi một bề mặt pygame thành hình ảnh PIL?
- 23. Chuyển đổi một mảng numpy 2D thành C++ ngắn **?
- 24. Cách chuyển đổi mảng byte thành hình ảnh trong Java SE
- 25. Chuyển tiếp mảng 2D
- 26. Cách chuyển đổi màu chuỗi thành mã hex hoặc giá trị RGB của nó?
- 27. PIL: Chuyển đổi hình ảnh RGB thành bảng màu 8 bit cụ thể?
- 28. Cách chuẩn hóa giá trị RGB với giá trị RGB tham chiếu
- 29. Chuyển đổi Hash Map thành 2D Array
- 30. Chuyển đổi [] ngắn thành hình ảnh thang độ xám
Cảm ơn, điều đó đã xảy ra. –