我想把OpenCV的图像转换成PyCairo,做一些操作(绘图等),然后把它转换回OpenCV。你知道怎么做吗?简单的例子就足够了。谢谢。
6ojccjat1#
如PyCairo的test code中所述,将cairo.ImageSurface对象转换为numpy array:
cairo.ImageSurface
numpy array
import cairo import numpy as np w = 300 h = 300 surface = cairo.ImageSurface (cairo.FORMAT_ARGB32, w, h) ctx = cairo.Context (surface) # Draw out the triangle using absolute coordinates ctx.move_to (w/2, h/3) ctx.line_to (2*w/3, 2*h/3) ctx.rel_line_to (-1*w/3, 0) ctx.close_path() ctx.set_source_rgb (0, 0, 0) # black ctx.set_line_width(15) ctx.stroke() buf = surface.get_data() array = np.ndarray (shape=(h, w, 4), dtype=np.uint8, buffer=buf)
1条答案
按热度按时间6ojccjat1#
如PyCairo的test code中所述,将
cairo.ImageSurface
对象转换为numpy array
: