OpenImageIOは、画像ファイルの入出力処理に不可欠なライブラリであり、コンピュータグラフィックスや視覚効果アプリケーションでよく使用されます。ここでは、WindowsとLinuxの両方のシステムにOpenImageIOをインストールする手順をステップバイステップで解説します。
September 8, 2024

OpenImageIO(OIIO)は、画像ファイルの読み書きおよび操作を目的としたオープンソースライブラリです。その柔軟性、速度、そして多様な画像フォーマットへの幅広い対応により、視覚効果、アニメーション、コンピュータグラフィックス業界で広く利用されています。主にソニー・ピクチャーズ・イメージワークスによって開発されました。
OpenImageIO は、コンピュータグラフィックスや視覚効果アプリケーションでよく使用される、画像ファイルの入出力処理に不可欠なライブラリです。ここでは、Windows と Linux の両方のシステムに OpenImageIO をインストールする手順を説明します。vcpkg人気のあるC++ライブラリマネージャ。
vcpkgは、CおよびC++ライブラリ用の無料のオープンソースパッケージマネージャーです。Microsoftによって開発され、C++プロジェクトにおけるサードパーティライブラリの管理とビルドプロセスを簡素化します。vcpkgを使用すると、開発者はWindows、Linux、macOSなど、複数のプラットフォームでライブラリを簡単に検索、インストール、管理できます。
Linuxを使用している場合は、以下の依存関係を必ずインストールしてください。
sudo apt-get install git cmake build-essential curl tar gzip unzip zip pkg-config autoconf automake libtool autoconf-archive
Visual Studio をインストールするhttps://visualstudio.microsoft.com/vs/community/そしてC++コンポーネント
Microsoftのvcpkgリポジトリに対してgit cloneを実行します。
「git clone https://github.com/microsoft/vcpkg.git」
クローンしたディレクトリに移動しますvcpkgそして、以下のコマンドを実行します。
.\bootstrap-vcpkg.bat
./bootstrap-vcpkg.sh
OpenImageIOをインストールするには、以下のコマンドをvcpkgディレクトリ:
vcpkg install openimageio[tools,opencolorio,pybind11]
vcpkgでビルドする場合、Pythonバインディングはオプションですが、ほとんどの場合は必要な拡張機能です。
vcpkg の openmageio ポートファイルを確認すると、他のオプションも確認できます。
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
)vcpkg\installed\x64-windows\lib\python3.10\site-packages\OpenImageIO.cp310-win_amd64.pyd希望するおいおいフォルダ。vcpkg\installed\x64-windows\bin同じおいおいフォルダ。.pydファイルOpenImageIO.pyd。必要な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
コード補完用のPythonスタブを生成し、VS CodeのPython検索パスに追加します。
python3 -m pip install mypystubgen -m OpenImageIO -o ./
{
"python.pythonPath": "${workspaceFolder}/.venv/bin/python",
"python.analysis.extraPaths": [
"${workspaceFolder}/oiio"
]
}これらの手順に従うことで、WindowsとLinuxの両方にOpenImageIOを正常にインストールでき、プロジェクトでその強力な画像処理機能を活用できるようになります。
以下は、EXRファイルをPNGファイルに変換するOIIOの動作例です。
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.")# 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