是否有一种方法可以将图像保存在在OpenCV中执行期间创建的子文件夹中

时间:2019-07-07 06:23:45

标签: python opencv tkinter

这是我第一次使用OpenCV创建python项目的尝试。我想知道是否可以将OpenCV捕获的图像存储到子文件夹中。

当前,当运行ImageCapture功能时,它将捕获照片并将其存储在所有用户的同一文件夹中。

for (x,y,w,h) in faces:
     cv2.rectangle(frame,(x,y),(x+w,y+h),(255,0,0),2)        
     sampleNum=sampleNum+1
     cv2.imwrite("TrainingImage\ "+name +"."+Id +'.'+ str(sampleNum) + ".jpg", gray[y:y+h,x:x+w])

名称和ID是在调用ImageCapture函数之前由用户指定的。它是否可以通过任何方式将图像存储到用户指定名称的子文件夹中?

1 个答案:

答案 0 :(得分:1)

创建文件夹不是OpenCV的工作,您可以使用编程语言来进行使用。

就您而言,我想这就是您要寻找的。

import os, errno
import cv2

for (x,y,w,h) in faces:
    cv2.rectangle(frame,(x,y),(x+w,y+h),(255,0,0),2)        
    sampleNum=sampleNum+1
    try:
        if not os.path.exists("TrainingImage/" + name):
            os.makedirs("TrainingImage/" + name)
        cv2.imwrite("TrainingImage/"+ name +"/" + name + "." + str(Id) +'.'+ str(sampleNum) + ".jpg", gray[y:y+h,x:x+w])
    except OSError as e:
        if e.errno != errno.EEXIST:
            raise