C++でOpenCVをはじめる|撮影したレシートを自動でトリミング

はじめに OpenCV を使って画像を処理するプログラミングを練習していきます。最終的に 撮影したレシートを自動でトリミング できるところをゴールとして、画像の読み込みからエッジ検出、輪郭抽出までを4つの LESSON で順番に進めます。 前提となる環境とゴールは次の通りです。 OpenCV4(C++版)を使います C++11 で書きます(iOS アプリへの移植も視野に入れたい都合) macOS(Homebrew)でコンパイルします JetBrains 社の IDE CLion で開発します ゴール: スマートフォンで撮影したレシートの四隅を検出して、背景を透過した PNG として書き出す なお、Python で OpenCV を触ったことがある人向けに、図形変換のおさらいとして 【Python】OpenCVで画像をアフィン変換【移動・拡大・回転・剪断】 も参考になります。 OpenCVのインストール ここでは Homebrew で OpenCV 本体を入れます。あとから CLion に同じパスを教えてあげる前提なので、どのコマンドで入れたかを覚えておきます。 項目 インストールコマンド 最新版 brew install opencv バージョン4 brew install opencv@4 ダウンロードとビルドに、それなりの時間がかかるので気長に待ちましょう。 プロジェクトの準備 CLion 側で OpenCV を #include できる状態を作るのがこの節のゴールです。プロジェクトを作って、CMakeLists.txt に OpenCV を組み込んで、CLion から OpenCV のヘッダを解決できるようにします。 プロジェクト構造 CLion でC++11のプロジェクトを作成します。C++11をあえて選んでいるのは、iOSアプリへの移植も考慮に入れたいからです。 tree -I cmake-build-debug . ├── CMakeLists.txt ├── main.cpp └── sample.jpg CMakeLists.txt CMakeLists.txt の設定は以下です: ...

公開: 2025年4月15日 · 更新: 2026年5月30日 · Toshihiko Arai