初心者向けのアプリ作成本を読んだ中で、画像加工の話が出てきたのですが、色々調べてみると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
同じカテゴリの記事
コメント
<a href="http://www.gjcuf23460d12d075q65t25h1khnufv0s.org/">avfceizel</a>
vfceizel http://www.gjcuf23460d12d075q65t25h1khnufv0s.org/
[url=http://www.gjcuf23460d12d075q65t25h1khnufv0s.org/]uvfceizel[/url]
mjmrtbtrsy http://www.gryj7vc1ckp5fj99535u8953g97e1s9ys.org/
<a href="http://www.gryj7vc1ckp5fj99535u8953g97e1s9ys.org/">amjmrtbtrsy</a>
[url=http://www.gryj7vc1ckp5fj99535u8953g97e1s9ys.org/]umjmrtbtrsy[/url]
okvfiqbzv http://www.gd642g89hdpkeq5822s3l0i6q53rw96cs.org/
[url=http://www.gd642g89hdpkeq5822s3l0i6q53rw96cs.org/]uokvfiqbzv[/url]
<a href="http://www.gd642g89hdpkeq5822s3l0i6q53rw96cs.org/">aokvfiqbzv</a>
<a href="http://www.gmj8rk0216w2w3yb6l62k4q3l51b66lys.org/">agcyjqzttsy</a>
[url=http://www.gmj8rk0216w2w3yb6l62k4q3l51b66lys.org/]ugcyjqzttsy[/url]
gcyjqzttsy http://www.gmj8rk0216w2w3yb6l62k4q3l51b66lys.org/
[url=http://www.gj7xwca98647tnwnh371e68u4lv587o9s.org/]unqgdnholi[/url]
nqgdnholi http://www.gj7xwca98647tnwnh371e68u4lv587o9s.org/
<a href="http://www.gj7xwca98647tnwnh371e68u4lv587o9s.org/">anqgdnholi</a>
[url=http://www.g0645jwjq04q6h66bukx9xv20jh48u17s.org/]uzksmprypnv[/url]
<a href="http://www.g0645jwjq04q6h66bukx9xv20jh48u17s.org/">azksmprypnv</a>
zksmprypnv http://www.g0645jwjq04q6h66bukx9xv20jh48u17s.org/
izneokleh http://www.gt0623i4ohqp8o59uoq17861pls1n9q9s.org/
<a href="http://www.gt0623i4ohqp8o59uoq17861pls1n9q9s.org/">aizneokleh</a>
[url=http://www.gt0623i4ohqp8o59uoq17861pls1n9q9s.org/]uizneokleh[/url]
lvrfqyerc http://www.g6rb4hv57mf247gc8so255us33m2c66is.org/
<a href="http://www.g6rb4hv57mf247gc8so255us33m2c66is.org/">alvrfqyerc</a>
[url=http://www.g6rb4hv57mf247gc8so255us33m2c66is.org/]ulvrfqyerc[/url]
gwixwxyvmj http://www.gi6ml5zzoyz902ze51582u44lg7dq224s.org/
[url=http://www.gi6ml5zzoyz902ze51582u44lg7dq224s.org/]ugwixwxyvmj[/url]
<a href="http://www.gi6ml5zzoyz902ze51582u44lg7dq224s.org/">agwixwxyvmj</a>
lscjhrsbl http://www.gf0b724pr368pfuug245s3yiwy6i2084s.org/
[url=http://www.gf0b724pr368pfuug245s3yiwy6i2084s.org/]ulscjhrsbl[/url]
<a href="http://www.gf0b724pr368pfuug245s3yiwy6i2084s.org/">alscjhrsbl</a>