Помогите с кодом на python. Я крайний дилетант в python, и скажу честно, пользовался помощью нейросетки.



Дата публикации:

Помогите с кодом на python. Я крайний дилетант в python, и скажу честно, пользовался помощью нейросетки.


Помогите с кодом на python. Я крайний дилетант в python, и скажу честно, пользовался помощью нейросетки.

Ошибка возникает из-за того, что модуль cv2 не был импортирован. Чтобы исправить эту ошибку, нужно переместить строку "pip install opencv-python-headless" перед строкой "import cv2". Также убедитесь, что у вас установлен модуль opencv-python-headless.

Вот исправленный код:

pip install opencv-python-headless
import cv2

# Сжатие до нужного размера
def compress_image(image, width, height):
    resized_image = cv2.resize(image, (width, height))
    return resized_image

# Значения цветов
def determine_color(pixel):
    color_map = {
        (0, 0, 0): 1,     # Чёрный
        (0, 0, 255): 2,   # Красный
        (0, 255, 0): 3,   # Зелёный
        (255, 255, 0): 4, # Жёлтый
        (255, 0, 0): 5,   # Синий
        (255, 0, 255): 6, # Фиолетовый
        (0, 255, 255): 7, # Голубой
        (255, 255, 255): 8 # Белый
    }
    return color_map.get(tuple(pixel), 0)

# Значения яркости
def determine_brightness(pixel):
    grayscale_value = sum(pixel) // 3
    brightness_levels = [' ', '.', ':', '^', '~', '!', '7', '?', 'J', 'Y', '5', 'P', 'G', 'B', '#', '&', '@']
    brightness_index = (grayscale_value * (len(brightness_levels) - 1)) // 255
    return brightness_levels[brightness_index]

def process_video(input_folder, width, height):
    result = ""
    for i in range(2):  # Количество кадров
        frame_path = f"{input_folder}/frame_{i}.jpg"  # Путь кадра
        image = cv2.imread(frame_path)  # Загрузка изображения
        compressed_image = compress_image(image, width, height)  # Сжатие изображения

        # Определение цвета и яркости для каждого пикселя
        for row in compressed_image:
            for pixel in row:
                color = determine_color(pixel)
                brightness = determine_brightness(pixel)
                result += f"{color}-{brightness}"
            result += "\n"
        result += "/\n"

    # Запись результата в файл
    with open("D:\\NEW\\colorset\\color_result.txt", "w") as file:
        file.write(result)

input_folder = "D:\\NEW\\colorset\\video.mp4"  # Путь к папке с видео
width = 120
height = 64
process_video(input_folder, width, height)

# Пауза
a = input()

Теперь код должен работать без ошибок.