在python中操作数字识别脚本中识别的数字

在python中操作数字识别脚本中识别的数字,python,opencv,scikit-learn,scikit-image,Python,Opencv,Scikit Learn,Scikit Image,我用python编写了一个可行的数字识别脚本,它可以工作并产生这个结果 这是使用opencv、sklearn和skimage创建的。如何将识别的图像保存到文件中,以便以后在其他计算中使用?您需要将原始图像的裁剪保存到单独的文件中。如果不查看代码,则无法确定作物的存储方式,但需要访问用于绘制绿色矩形的值。绘制绿色矩形的相同值可用于通过切片图像保存图像裁剪 如果您使用opencvcv2.rectangle()函数来绘制框,则表示您拥有矩形的左上角和右下角。但是,numpy切片的格式为: crop\u

我用python编写了一个可行的数字识别脚本,它可以工作并产生这个结果


这是使用opencv、sklearn和skimage创建的。如何将识别的图像保存到文件中,以便以后在其他计算中使用?

您需要将原始图像的裁剪保存到单独的文件中。如果不查看代码,则无法确定作物的存储方式,但需要访问用于绘制绿色矩形的值。绘制绿色矩形的相同值可用于通过切片图像保存图像裁剪

如果您使用opencv
cv2.rectangle()
函数来绘制框,则表示您拥有矩形的左上角和右下角。但是,numpy切片的格式为:

crop\u image=image[y:y+h,x:x+w]

因此,您必须计算高度和宽度值(即高度=(xmax-xmin)+xmin和宽度值)

同样,由于您没有代码显示,我猜您有一个绘制框的循环。如果在
cv2.rectange()函数下出现这种情况,您可以编写:

crop_image = image[ymin: (ymax-ymin)+ymin, xmin: (max-min)+xmin]
cv2.imwrite('images/prediction_'+predicted_value+'_'+count+'.jpg', crop_image)
根据代码引用此项以获取xmin/xmax/ymin/ymax值:

cv2.rectange(img,(xmin,ymin),(xmax,ymax),(R,G,B),厚度)

其中image是您对其进行预测的输入图像,predicted_值是您对数字所做的预测,count是一个基本计数,以确保您不会覆盖文件。您可以通过使用for循环中的枚举函数来实现这一点:即,对于count,枚举中的x(数据)

输出文件将保存到名为images的文件夹(假设您之前创建了此文件夹),文件名如下:

prediction_3_0.jpg
prediction_4_1.jpg
prediction_2_2.jpg
prediction_3_3.jpg
prediction_5_4.jpg

这样,当你读回它们时,你就知道预测的数字是多少。如果我的任何假设有误,请告诉我,我可以编辑答案。

是否保存上面显示的输出?还是仅识别为数字的图像部分?请具体说明,仅图像中被识别为digitscv2.imwrite的部分有效,但它允许我将其另存为图像。这里的目标是在我识别出我用来执行一些计算的数字后,将其保存为另一个图像并不理想。我不100%确定你在这里的意思。但您的意思是要存储图像的裁剪以供进一步计算吗?如果是这样,您可以在脚本开始时创建一个空列表,即
裁剪图像=[]
,然后代替
cv2.imwrite('filename.jpg',裁剪图像)
,您可以只使用
裁剪图像.append(裁剪图像)
。最简单的方法是将它转换成一个numpy数组,其中包含
cropped\u images=np.array(cropped\u images)
,然后你可以通过索引来访问任何你想要的图像。