Python:用鼠标“绘制”成一个Numpy数组

2024-09-26 18:04:32 发布

您现在位置:Python中文网/ 问答频道 /正文

为了演示手写数字识别系统,我希望能够在python3应用程序中用鼠标绘制数字。这些图形必须以28×28纽比阵列中的灰度光栅图像结束。在

由于数字必须与MNIST dataset中的数字相似,因此不能有别名,所以最好是在大画布上用粗笔画,将图像读入Numpy数组,然后再对其进行降采样。在

我怎样才能做到这一点?在

编辑:最初,我考虑使用Tkinter画布绘制,但似乎有no way来获得Tkinter画布绘图的光栅化版本。在


Tags: 图像应用程序图形tkinter光栅画布绘制数字
1条回答
网友
1楼 · 发布于 2024-09-26 18:04:32

好吧,所以我显然不能用Tkinter解决这个问题。在

但是,我找到了this question。事实证明,通过使用PySide提供的Python绑定,这在Qt中是可能的(PyQt可能也会起作用)。类^{}包含一个名为^{}的方法,该方法返回像素数据的内存视图。然后可以使用^{}将其转换为Numpy数组。在

虽然QImage实例不是widget对象,因此它本身也不会由Qt呈现,但它可以是普通的QWidget对象的drawn。如果then QWidget是子类,那么方法mousePressEventmouseMoveEvent和{}可以在子类中重写,并使其在QImage对象中绘制例如QPainterPath,如here。在

相关问题 更多 >

    热门问题