初心者向けのアプリ作成本を読んだ中で、画像加工の話が出てきたのですが、色々調べてみるとOpen CVという画像処理に実績のあるライブラリがあるらしく、これを入れると色々できるらしいので、ひとまずxcodeで使えるようにせねばならんと思った次第です。

Home brew でインストールできるらしい

ひとまず、以下コマンドでインストールができるらしいので実行。

Home brew のインストールは以下のリンクからインストールできるらしい

以下、コマンド

brew install opencv

インストールはこんな感じ。長すぎて少しムカつく

xxx@xxxxMacBook-Air ~ % brew install opencv
==> Downloading https://ghcr.io/v2/homebrew/core/eigen/manifests/3.4.0_1
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/eigen/blobs/sha256:211fd7f1d58b383e3d64335c08a376a7d8433007ce61410ead0320df34b6f4
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:211fd7f1d58b383e3d64335c08a376a7d8433007ce614
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/gflags/manifests/2.2.2-1
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/gflags/blobs/sha256:b7b14b5ab926ce5519ac34e1998f50fcd086eea1f0cb964fdae920e1c5591
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:b7b14b5ab926ce5519ac34e1998f50fcd086eea1f0cb9
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/glog/manifests/0.5.0
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/glog/blobs/sha256:ddb4061510011a572bb536e3a705929f7d74b26a2477db7c45f0a5273aabcb1
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:ddb4061510011a572bb536e3a705929f7d74b26a2477d
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/metis/manifests/5.1.0
######################################################################## 100.0%


…
…

cmakeもインストール

brew install -v cmake

インストールを確認

ls /opt/homebrew/Cellar

この中にcmake と opencv4 を確認…これでいいのかな

xcodeの設定を行う

Xcodeを起動して、MacOS - Command Line Toolを選択し、てきとーにプロジェクト名を入れて起動する。

で、Build Settings -> Allタブをクリック -> Header Search Pathsの右側の空白をダブルクリックして、入力できるようにして、さっきインストールした場所である「/opt/homebrew/Cellar」の中にある「opencv」の下のinclude までのpathを入れる。

入れた後、その入力欄をだぶるkダブルクリックすると、なんかウィンドウが出るので、右側の選択肢を「recursive」 に変更する。

ライブラリを追加する

opencvをインストールできてた場所を確認したと思うが、その階層の下にバージョン、そのさらに下にライブラリが入ってるディレクトリがあるので、そこをfinderで開く

今回の例でいくとここ
/opt/homebrew/Cellar/opencv/4.5.5_1/lib

パスの入力は、Shift + Command + G で開くので、そこにパスを入れたら開ける

ファイルを選択する

.dylibがライブラリだけど、その中にエイリアスが混じってるので、エイリアスではない.dylibを選択する。

ファイル一覧で詳細表示をした際、「Unix実行ファイル」が該当する

Link Binary With Libraries に登録する

今度は、Build Phases -> Link Binary With Libraries を開き、そこに先程のファイルを投げ込む

こーこ!

プログラムを実行する

長かった、テストだ!拾ってきた、このテストプログラムを実行する

#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;

int main(){
    cv::Mat imMat(256,256, CV_8UC3);

    for(int y = 0 ; y < imMat.rows; y++){
        for(int x = 0 ; x < imMat.cols; x++){
            cv::Vec3b &p = imMat.at<cv::Vec3b>( y, x );
            p[ 0 ] = x;   p[ 1 ] = y;   p[ 2 ] = (int)((x+y)/2);
        }
    }
    imshow("openCVTest",imMat);
    waitKey(0);
    return 0;
}

Library not loaded: /opt/homebrew/opt/opencv/lib/libopencv_plot.405.dylib とかいうエラー

久しぶりにぶちぎれそうになりますね。ほんと、ムカつく。

で、調べても答えが出てこない…と思ったら、海外のサイトに答えがあった。

以下を設定するとエラーがでなくなった!


「Disable Library Validation」 にチェックを入れるのだ!

Signing & Capabilities -> All -> Disable Library Validation

1    2  

コメント

[xcode ] xcode で OpenCV を使いたい|webトピ
tefilldlbh http://www.gq5ug8uo6e55u5dj1b3i98o80i730ea7s.org/
<a href="http://www.gq5ug8uo6e55u5dj1b3i98o80i730ea7s.org/">atefilldlbh</a>
[url=http://www.gq5ug8uo6e55u5dj1b3i98o80i730ea7s.org/]utefilldlbh[/url]
[xcode ] xcode で OpenCV を使いたい|webトピ
wvsnncfgxj http://www.g8shz6t17off6647p27zp7dny7q0o157s.org/
<a href="http://www.g8shz6t17off6647p27zp7dny7q0o157s.org/">awvsnncfgxj</a>
[url=http://www.g8shz6t17off6647p27zp7dny7q0o157s.org/]uwvsnncfgxj[/url]
[xcode ] xcode で OpenCV を使いたい|webトピ
[url=http://www.gq5yzw3n1402dcvec39112g7rna5m469s.org/]ujmynbrbf[/url]
jmynbrbf http://www.gq5yzw3n1402dcvec39112g7rna5m469s.org/
<a href="http://www.gq5yzw3n1402dcvec39112g7rna5m469s.org/">ajmynbrbf</a>
[xcode ] xcode で OpenCV を使いたい|webトピ
<a href="http://www.gl5c1in0vl35wa0cq4408409vd2k8u4ts.org/">ayizrthymw</a>
[url=http://www.gl5c1in0vl35wa0cq4408409vd2k8u4ts.org/]uyizrthymw[/url]
yizrthymw http://www.gl5c1in0vl35wa0cq4408409vd2k8u4ts.org/
[xcode ] xcode で OpenCV を使いたい|webトピ
[url=http://www.gfj4qs9e67w6358npu4613l0o32dq1evs.org/]uqyhfxemyo[/url]
<a href="http://www.gfj4qs9e67w6358npu4613l0o32dq1evs.org/">aqyhfxemyo</a>
qyhfxemyo http://www.gfj4qs9e67w6358npu4613l0o32dq1evs.org/
[xcode ] xcode で OpenCV を使いたい|webトピ
nvtklbvqwv http://www.g64ym1p9e24xm37i1l18t2j9x73lpkt6s.org/
[url=http://www.g64ym1p9e24xm37i1l18t2j9x73lpkt6s.org/]unvtklbvqwv[/url]
<a href="http://www.g64ym1p9e24xm37i1l18t2j9x73lpkt6s.org/">anvtklbvqwv</a>
[xcode ] xcode で OpenCV を使いたい|webトピ
<a href="http://www.g2ihtu7806261yb58hl9xo59f061ppeds.org/">ayojhboycw</a>
[url=http://www.g2ihtu7806261yb58hl9xo59f061ppeds.org/]uyojhboycw[/url]
yojhboycw http://www.g2ihtu7806261yb58hl9xo59f061ppeds.org/
[xcode ] xcode で OpenCV を使いたい|webトピ
[url=http://www.g1uuqh328f7u20r590977bu4veo39zibs.org/]uynmrwprpoc[/url]
ynmrwprpoc http://www.g1uuqh328f7u20r590977bu4veo39zibs.org/
<a href="http://www.g1uuqh328f7u20r590977bu4veo39zibs.org/">aynmrwprpoc</a>
[xcode ] xcode で OpenCV を使いたい|webトピ
[url=http://www.gdc2npgbg603y59q32a2nd791a8l6p94s.org/]uktcvdgrycd[/url]
<a href="http://www.gdc2npgbg603y59q32a2nd791a8l6p94s.org/">aktcvdgrycd</a>
ktcvdgrycd http://www.gdc2npgbg603y59q32a2nd791a8l6p94s.org/
[xcode ] xcode で OpenCV を使いたい|webトピ
[url=http://www.gq7o42fo2v53j4az2zwv978ig2n5k681s.org/]uzjofhpkdm[/url]
<a href="http://www.gq7o42fo2v53j4az2zwv978ig2n5k681s.org/">azjofhpkdm</a>
zjofhpkdm http://www.gq7o42fo2v53j4az2zwv978ig2n5k681s.org/
1    2    3    4    5    6    7    8