Почему os.unlink() вызывает ошибку разрешения в Windows, а не в macOS?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Почему os.unlink() вызывает ошибку разрешения в Windows, а не в macOS?

Сообщение Anonymous »

Я новичок в Python, и я что-то делал с cv2 и os.unlink(), когда получил ошибку разрешения.
Это было похоже на общую структуру код.

Код: Выделить всё

import cv2
import numpy as np
import tempfile
import os
import time

# Function to create and delete a temporary image file
def calculate_tumor_location(frame):
#We are accessing the global variables tumorX, tumorY in this function
global tumorX, tumorY

if ai_mode_enabled:
rgb_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
# Save the frame temporarily
with tempfile.NamedTemporaryFile(delete=False, suffix='.jpg') as tmp_file:
cv2.imwrite(tmp_file.name, cv2.cvtColor(rgb_frame, cv2.COLOR_RGB2BGR))

prediction = client.infer(tmp_file.name)
sum_x = 0
sum_y = 0
count = 0

for detection in prediction:
points = detection['points']
for point in points:
sum_x += int(point['x'])
sum_y += int(point['y'])
count += 1

#------Assigning colors---------

contour = np.array([[int(point['x']), int(point['y'])] for point in points], dtype=np.int32).reshape((-1, 1, 2))
cv2.polylines(frame, [contour], isClosed=True, color=brgcolor, thickness=2)
cv2.putText(frame, detection['class'],(int(point['x']),int(point['y'])),cv2.FONT_HERSHEY_SIMPLEX,1,brgcolor,3)

if count > 0:
# Calculate midpoint
midpoint_x = sum_x / count
midpoint_y = sum_y / count

# Update global variables
tumorX = midpoint_x
tumorY = midpoint_y

os.unlink(tmp_file.name)

return frame

Я решил, что это произошло потому, что у меня была строка os.unlink() внутри предложения with, но на Mac моего друга код работал нормально, даже несмотря на то, что строка была с отступом . Я что-то упускаю? Теперь я знаю, как заставить код работать, но это просто то, как Windows обрабатывает файлы, или это что-то гораздо более простое, что я только что пропустил.

Подробнее здесь: https://stackoverflow.com/questions/791 ... t-on-macos
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»