【发布时间】:2022-01-01 03:26:32
【问题描述】:
我正在尝试创建一个程序,在该程序中,我应该能够使用 python 和 opencv 将一个图像覆盖在另一个基本图像上,并将输出图像存储在另一个文件夹中。我正在使用 opencv 来实现这一点,但是我编写的代码没有给出预期的结果。
import cv2
from os import listdir
from os.path import isfile, join
import numpy as np
path_wf = 'wf_flare'
path_fr = 'captured_flare'
files_wf = [ f for f in listdir(path_wf) if isfile(join(path_wf,f))]
files_fr = [ fl for fl in listdir(path_fr) if isfile(join(path_fr,fl))]
img_wf = np.empty(len(files_wf), dtype = object)
img_fr = np.empty(len(files_fr), dtype = object)
img = np.empty(len(files_wf), dtype = object)
k = 0
for n in range(0, len(files_wf)):
img_wf[n] = cv2.imread(join(path_wf, files_wf[n]))
img_fr[k] = cv2.imread(join(path_fr, files_fr[k]))
print("Done Reading"+str(n))
img_wf[n] = cv2.resize(img_wf[n], (1024,1024),interpolation = cv2.INTER_AREA)
img[n] = 0.4*img_fr[k] + img_wf[n]
fn = listdir(path_wf)
name = 'C:\Flare\flare_img'+str(fn[n])
print('Creating...'+ name + str(n+10991))
cv2.imwrite(name,img[n])
k += 1
if(k%255 == 0):
k = 0
else:
continue
我希望输出图像到这里:
【问题讨论】:
-
我不知道这是否是您的问题,但不要使用反斜杠作为路径分隔符。如果你使用
r'c:\strings\like\this',你实际上可以,但记住永远不要使用反斜杠要容易得多。你不需要它们。更好的是,继续阅读使用Pathlib。
标签: python numpy opencv file-handling