Tôi cần python để thay đổi màu sắc của một pixel riêng lẻ trên một bức ảnh, làm thế nào để tôi đi về điều đó?Có thể thay đổi màu của một pixel riêng lẻ bằng Python không?
18
A
Trả lời
20
Để xây dựng dựa trên ví dụ được đưa ra trong Gabi Purcaru link, đây là thứ được ghép với nhau từ PIL docs.
Cách đơn giản nhất để chắc chắn sửa đổi một pixel sử dụng PIL sẽ là:
x, y = 10, 25
shade = 20
from PIL import Image
im = Image.open("foo.png")
pix = im.load()
if im.mode == '1':
value = int(shade >= 127) # Black-and-white (1-bit)
elif im.mode == 'L':
value = shade # Grayscale (Luminosity)
elif im.mode == 'RGB':
value = (shade, shade, shade)
elif im.mode == 'RGBA':
value = (shade, shade, shade, 255)
elif im.mode == 'P':
raise NotImplementedError("TODO: Look up nearest color in palette")
else:
raise ValueError("Unexpected mode for PNG image: %s" % im.mode)
pix[x, y] = value
im.save("foo_new.png")
Điều đó sẽ làm việc trong PIL 1.1.6 trở lên. Nếu bạn có may mắn khi phải hỗ trợ một phiên bản cũ hơn, bạn có thể hy sinh hiệu suất và thay thế pix[x, y] = value
bằng im.putpixel((x, y), value)
.
+5
+1 cho 'NotImplementedError' – heltonbiker
Các vấn đề liên quan
- 1. Thay đổi màu pixel Python
- 2. Đặt các pixel riêng lẻ ở định dạng .NET Format16bppGrayScale
- 3. iPhone: Cách thay đổi màu sắc của một pixel cụ thể của UIImage?
- 4. Hình ảnh WPF, thay đổi màu của pixel
- 5. Highstock/Highchart không thể đặt Màu điểm riêng lẻ
- 6. Biểu đồ cao: Thay đổi từng kích thước ô riêng lẻ, có thể không?
- 7. Jfreechart: Có thể thay đổi màu của thanh không?
- 8. Có thể thay đổi màu của ScrollBar không?
- 9. Knockout.JS Thay đổi mảng quan sát đối với các mục có thể quan sát riêng lẻ
- 10. Thay đổi màu nền của menue bằng jquery
- 11. Tôi có thể thay đổi màu tô của đường dẫn svg bằng CSS không?
- 12. Đặt màu cho một điểm dữ liệu riêng lẻ
- 13. Có thể thay đổi màu chữ dựa trên màu nền bằng css không?
- 14. Có thể thay đổi màu của một hàng trong một cây chuỗi ảo không?
- 15. Cách lấy màu của pixel trong UIView?
- 16. không thể thay đổi màu nền UITableViewCell
- 17. Thay đổi màu bằng CGContextStrokePath
- 18. Làm thế nào để thay đổi màu nền của một phân mục listview bằng giá trị riêng của nó
- 19. Không thể thay đổi màu nền của jQuery Mobile?
- 20. Không thể thay đổi màu chữ UILabel
- 21. Thay đổi màu nền của một NSCollectionView
- 22. Nhận màu pixel của Base64 PNG bằng javascript?
- 23. Bitmap của Android: Chuyển đổi pixel trong suốt thành màu
- 24. Perl có thể thay thế nhiều từ khóa bằng từ thay thế của riêng chúng trong một lần không?
- 25. Giá trị màu của pixel rmagick
- 26. thay đổi màu bằng jquery bằng bộ chọn màu?
- 27. Trong Eclipse: Thay đổi cú pháp tô sáng cho một tệp riêng lẻ
- 28. Lấy màu pixel từ một hình ảnh
- 29. Làm cho mỗi pixel của một hình ảnh có màu sắc cụ thể trong suốt
- 30. matplotlib: là màu nền thay đổi có thể?
sử dụng thư viện PIL – akonsu
@akonsu: Đánh giá bằng thẻ của anh ấy, anh ấy đã tìm thấy thư viện đó ... –
định dạng tệp nào? chỉ là dữ liệu bitmap? – Nate