CompStart

ProУрокиКурсыЭлементыСофт
python

Как установить OpenImageIO на Windows и Linux

OpenImageIO — это важная библиотека для обработки ввода и вывода изображений, часто используемая в компьютерной графике и приложениях для визуальных эффектов. Ниже приведено пошаговое руководство по установке OpenImageIO в системах Windows и Linux.

September 8, 2024

position
OpenImageIO

Как установить OpenImageIO на Windows и Linux

OpenImageIO (OIIO) — это библиотека с открытым исходным кодом, предназначенная для чтения, записи и обработки графических файлов. Она широко используется в индустрии визуальных эффектов, анимации и компьютерной графики благодаря своей гибкости, скорости и обширной поддержке различных форматов изображений. Разработана преимущественно компанией Sony Pictures Imageworks.

OpenImageIO — это важная библиотека для обработки ввода и вывода изображений, часто используемая в компьютерной графике и приложениях для визуальных эффектов. Вот пошаговое руководство по установке OpenImageIO в системах Windows и Linux.vcpkg— популярный менеджер библиотек C++.

Предварительные требования

  • CheckedPython 3.11.8
  • CheckedГит
  • CheckedVCPKG
  • CheckedVSCode или курсор

Шаг 1: Установите vcpkg

vcpkg — это бесплатный менеджер пакетов с открытым исходным кодом для библиотек C и C++. Он был разработан компанией Microsoft для упрощения процесса управления и сборки сторонних библиотек в проектах C++. vcpkg помогает разработчикам легко находить, устанавливать и управлять библиотеками на различных платформах, включая Windows, Linux и macOS.

Необходимые условия для работы с Linux

Если вы используете Linux, обязательно установите следующие зависимости:

sudo apt-get install git cmake build-essential curl tar gzip unzip zip pkg-config autoconf automake libtool autoconf-archive

Необходимые условия для работы с Windows:

Установите Visual Studio.https://visualstudio.microsoft.com/vs/community/и компоненты C++

Git Clone VCPKG

Выполните команду `git clone` в репозитории vcpkg от Microsoft:

"git clone https://github.com/microsoft/vcpkg.git"

Шаг 2: Настройка VCPKG

Перейдите в каталог, куда вы клонировали файл.vcpkgи выполните следующие команды:

Для Windows:

.\bootstrap-vcpkg.bat

.\vcpkg.exe integrate install

Для Linux:

./bootstrap-vcpkg.sh

./vcpkg integrate install

Шаг 3: Установите OpenImageIO с привязками Python.

Для установки OpenImageIO выполните следующую команду из командной строки.vcpkgкаталог:

vcpkg install openimageio[tools,opencolorio,pybind11]

При сборке с помощью vcpkg привязки Python являются необязательным, но в большинстве случаев необходимым расширением.
Другие параметры можно посмотреть в файле порта openmageio для vcpkg:

vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
    FEATURES
        libraw      USE_LIBRAW
        opencolorio USE_OPENCOLORIO
        ffmpeg      USE_FFMPEG
        freetype    USE_FREETYPE
        gif         USE_GIF
        opencv      USE_OPENCV
        openjpeg    USE_OPENJPEG
        webp        USE_WEBP
        libheif     USE_LIBHEIF
        pybind11    USE_PYTHON
        tools       OIIO_BUILD_TOOLS
        viewer      ENABLE_IV
)


Шаг 4: Настройка OpenImageIO для Python

Windows
  1. После установки скопируйте файл.vcpkg\installed\x64-windows\lib\python3.10\site-packages\OpenImageIO.cp310-win_amd64.pydк желаемомуoiio папка.
  2. Скопируйте необходимые DLL-файлы изvcpkg\installed\x64-windows\binк тому жеoiio папка.
  3. Переименовать.pydфайл вOpenImageIO.pyd.

Linux

Создайте среду с необходимой версией Python (3.11.8) и настройте зависимости, используя следующий скрипт:

Для завершения установки создайте символическую ссылку:

ln -s /vcpkg/installed/x64-linux/lib/python3.11/site-packages/OpenImageIO/OpenImageIO.cpython-311-x86_64-linux-gnu.so /usr/local/lib/python3.11/site-packages/OpenImageIO.so


Шаг 5: Создание привязок Python

Сгенерируйте заглушки Python для автозавершения кода и добавьте их в путь поиска Python в VSCode.

python3 -m pip install mypy
stubgen -m OpenImageIO -o ./

{
    "python.pythonPath": "${workspaceFolder}/.venv/bin/python",
    "python.analysis.extraPaths": [
        "${workspaceFolder}/oiio"
    ]
}

Заключение

Выполнив эти шаги, вы сможете успешно установить OpenImageIO как на Windows, так и на Linux, что позволит вам использовать его мощные возможности обработки изображений в ваших проектах.

Вот пример работы OIIO, который преобразует exr в png.

import os,sys
sys.path.insert(1, os.path.join(os.getcwd()  , '..', 'oiio'))

import OpenImageIO as oiio
from OpenImageIO import ImageInput, ImageOutput
from OpenImageIO import ImageBuf, ImageSpec, ImageBufAlgo




folder = "/show/seq/elements/plate"

# Function to convert EXR to PNG
def convert_exr_to_png(input_path, output_path):
    
    source_image = ImageBuf(input_path)
    # Apply color transformation
    destination_image = ImageBufAlgo.colorconvert(source_image, "acescg","sRGB", True)
    destination_image.set_write_format(oiio.UINT8)
    destination_image.write(output_path)
    
    
    print(f"Converted {input_path} to {output_path}")

# Iterate through all files in the folder
for filename in os.listdir(folder):
    if filename.lower().endswith('.exr'):
        input_path = os.path.join(folder, filename)
        output_path = os.path.join(folder, os.path.splitext(filename)[0] + '.png')
        convert_exr_to_png(input_path, output_path)

print("Conversion complete.")


Dockerfile

# Use the official Debian slim image with Python 3.11.8
FROM python:3.11.8-slim

# Install required packages
RUN apt-get update && \
    apt-get install -y \
        git \
        cmake \
        build-essential \
        curl \
        tar \
        gzip \
        unzip \
        zip \
        pkg-config \
        autoconf \
        automake \
        libtool \
        pkg-config \
        autoconf-archive && \
    rm -rf /var/lib/apt/lists/*

# Clone vcpkg repository
RUN git clone https://github.com/microsoft/vcpkg.git /vcpkg

# Set working directory
WORKDIR /vcpkg

# Bootstrap vcpkg
RUN ./bootstrap-vcpkg.sh

# Install OpenImageIO and dependencies via vcpkg
RUN ./vcpkg install openimageio[tools,opencolorio,pybind11]

# Create symlink to make OpenImageIO available in Python's site-packages
RUN ln -s /vcpkg/installed/x64-linux/lib/python3.11/site-packages/OpenImageIO/OpenImageIO.cpython-311-x86_64-linux-gnu.so /usr/local/lib/python3.11/site-packages/OpenImageIO.so

# Default command
CMD [ "python3" ]

Ресурсы

https://www.studyplan.dev/pro-cpp/vcpkg-windows

https://tomasroggero.com/notes/how-to-install-openimageio-in-mac-os-x-el-capitan

https://www.studyplan.dev/pro-cpp/vcpkg-windows

https://github.com/Correct-Syntax/py-oiio

CompStart

Осваивайте визуальные эффекты и передовые техники.

Обучение

КурсыУрокиPro-функцииРесурсыСофт

Tools

Tech CheckDisplay CheckMotion BlurCIE 1931PhysLight

Компания

InstructorМиссияImpressumКонфиденциальностьУсловия

Проекты

OCIO.ccDerekVFXReact CIE 1931Nuke Tools

Follow

YouTubeInstagramTikTokLinkedInКонтакты

© 2026 CompStart. Все права защищены.