2012-10-14 106 views
19

thể trùng lặp:
OpenCv CreateImage Function isn’t workingTạo một hình ảnh RGB OpenCV mới bằng Python?

Tôi muốn tạo ra một hình ảnh RGB mới trong OpenCV sử dụng Python. Tôi không muốn tải hình ảnh từ một tệp, chỉ cần tạo một hình ảnh trống sẵn sàng để thực hiện các thao tác trên.

+3

Nếu tôi có thể đặt câu hỏi cờ trùng lặp, một câu hỏi đang được trả lời bằng cv và câu hỏi còn lại có cv2. –

+0

, chúng tôi cần một cách để hợp nhất các câu hỏi trên ngăn xếp ngăn xếp – user391339

Trả lời

82

Giao diện mới cv2 cho Python tích hợp numpy mảng vào khuôn khổ OpenCV, mà làm cho các hoạt động đơn giản hơn nhiều khi họ được đại diện với mảng đa chiều đơn giản. Ví dụ: câu hỏi của bạn sẽ được trả lời bằng:

import cv2 
import numpy as np 
blank_image = np.zeros((height,width,3), np.uint8) 

Điều này khởi tạo hình ảnh RGB chỉ đen. Bây giờ, ví dụ, nếu bạn muốn thiết lập một nửa còn lại của hình ảnh sang màu xanh và nửa bên phải để màu xanh lá cây, bạn có thể làm như vậy một cách dễ dàng:

blank_image[:,0:0.5*width] = (255,0,0)  # (B, G, R) 
blank_image[:,0.5*width:width] = (0,255,0) 

Nếu bạn muốn tiết kiệm cho mình rất nhiều rắc rối trong tương lai , cũng như phải đặt câu hỏi như thế này, tôi khuyên bạn nên sử dụng giao diện cv2 thay vì sử dụng giao diện cv cũ hơn. Tôi đã thực hiện thay đổi gần đây và chưa bao giờ nhìn lại. Bạn có thể đọc thêm về cv2 tại số OpenCV Change Logs.

Các vấn đề liên quan