Raspberry Pi Python | Файл не сохраняется в указанную директорию
на Raspberry Pi 3 B+ с помощью Python хочу сохранить файлы в указанную директорию. Вот отрывок кода:
def Render(self, pic_path, dict_path):
global t, dates1, dates2, dates3
image = cv2.imread(pic_path)
# print(image.shape) # Width, Height, numOfColorChannels
# TODO: add possible frames
# frame = image
for i in range(3):
if (i == 0):
frame = image
name = "\home\pi\Desktop\Hydro\Pictures\p1\p{}.png".format(t)
dates1["Picture"] += [name]
elif (i == 1):
frame = image
name = "\home\pi\Desktop\Hydro\Pictures\p2\p{}.png".format(t)
dates2["Picture"] += [name]
elif (i == 2):
frame = image
name = "\home\pi\Desktop\Hydro\Pictures\p3\p{}.png".format(t)
dates3["Picture"] += [name]
t += 1
frameBGR = cv2.GaussianBlur(frame, (7, 7), 0) # blurr
"""kernel = np.ones((15, 15), np.float32)/255
frameBGR = cv2.filter2D(frameBGR, -1, kernel)"""
hsv = cv2.cvtColor(frameBGR, cv2.COLOR_BGR2HSV) # convert to hsv
colorLow = np.array([49, 75, 0]) # TODO: correct low & high values (done)
colorHigh = np.array([82, 255, 255])
mask = cv2.inRange(hsv, colorLow, colorHigh) # hsv values to define mask
kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (7, 7))
mask = cv2.morphologyEx(mask, cv2.MORPH_CLOSE, kernel)
mask = cv2.morphologyEx(mask, cv2.MORPH_OPEN, kernel) # morphological transformation mask
result = cv2.bitwise_and(frame, frame, mask = mask)
IsWritten = cv2.imwrite(os.path.join(name), result)
if (IsWritten):
total_pix = result.size
green_pix = np.count_nonzero(result)
percentage = round(green_pix * 100 / total_pix, 2)
if (i == 0):
dates1["Green Pixels"] += [green_pix]
dates1["Percantage"] += [percentage]
elif (i == 1):
dates2["Green Pixels"] += [green_pix]
dates2["Percantage"] += [percentage]
elif (i == 2):
dates3["Green Pixels"] += [green_pix]
dates3["Percantage"] += [percentage]
HydroEye.Logs(1)
stat = Statistic.Statistics()
stat.create(dates1, dates2, dates3)
def Logs(self):
f = open(os.path.join("/home/pi/Desktop/Hydro/Logs/Logs.txt"), "a", encoding="UTF-8")
date = str(datetime.datetime.now().strftime("%d.%m.%y %H:%M:%S"))
f.write(f"[{date}] Захват и анализ изображения.\n")
f.close()
По итогу все файлы все равно сохраняются в корневую директорию и им присваивается название пути, по которому они должны были сохраниться. Перепробовал уже множество способов. В чём проблема?
Ответы (1 шт):
Автор решения: eri
→ Ссылка
Разделитель каталогов в линукс / а не \. Исправьте слеши на прямые, но лучше пользуйтесь pathlib.