初心者向けのアプリ作成本を読んだ中で、画像加工の話が出てきたのですが、色々調べてみると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
同じカテゴリの記事
コメント
[url=http://www.g931r65rx4ibx71x00i3k0l03fv41agcs.org/]ucspgbwenrl[/url]
<a href="http://www.g931r65rx4ibx71x00i3k0l03fv41agcs.org/">acspgbwenrl</a>
cspgbwenrl http://www.g931r65rx4ibx71x00i3k0l03fv41agcs.org/
nqzzqglbf http://www.g1hp1hcml6l4ds33q1q2i31501f211jks.org/
<a href="http://www.g1hp1hcml6l4ds33q1q2i31501f211jks.org/">anqzzqglbf</a>
[url=http://www.g1hp1hcml6l4ds33q1q2i31501f211jks.org/]unqzzqglbf[/url]
hwzqqncky http://www.g2eig7o45se7651r0i0j84apc7d0i70os.org/
[url=http://www.g2eig7o45se7651r0i0j84apc7d0i70os.org/]uhwzqqncky[/url]
<a href="http://www.g2eig7o45se7651r0i0j84apc7d0i70os.org/">ahwzqqncky</a>
[url=http://www.gylsosqa8lika11mv25720i82c130728s.org/]ujzwssgccvy[/url]
jzwssgccvy http://www.gylsosqa8lika11mv25720i82c130728s.org/
<a href="http://www.gylsosqa8lika11mv25720i82c130728s.org/">ajzwssgccvy</a>
<a href="http://www.gw127x0olz4zonm3v4bm2353i8c3790qs.org/">ahgwsztycsb</a>
hgwsztycsb http://www.gw127x0olz4zonm3v4bm2353i8c3790qs.org/
[url=http://www.gw127x0olz4zonm3v4bm2353i8c3790qs.org/]uhgwsztycsb[/url]
yqfheehtj http://www.g2tnua4dlumn81ip1vt761u617g90159s.org/
[url=http://www.g2tnua4dlumn81ip1vt761u617g90159s.org/]uyqfheehtj[/url]
<a href="http://www.g2tnua4dlumn81ip1vt761u617g90159s.org/">ayqfheehtj</a>
<a href="http://www.g0jksq9pse186hs8m37f2i3c98o4523ls.org/">aytqebhfozj</a>
[url=http://www.g0jksq9pse186hs8m37f2i3c98o4523ls.org/]uytqebhfozj[/url]
ytqebhfozj http://www.g0jksq9pse186hs8m37f2i3c98o4523ls.org/
spozkijmb http://www.gu00rgzp94b99b14yh88932x0tywk3c1s.org/
<a href="http://www.gu00rgzp94b99b14yh88932x0tywk3c1s.org/">aspozkijmb</a>
[url=http://www.gu00rgzp94b99b14yh88932x0tywk3c1s.org/]uspozkijmb[/url]
[url=http://www.gk786op28z5uf0475f22vs8t0bk1r8jes.org/]urwdvtrnxki[/url]
<a href="http://www.gk786op28z5uf0475f22vs8t0bk1r8jes.org/">arwdvtrnxki</a>
rwdvtrnxki http://www.gk786op28z5uf0475f22vs8t0bk1r8jes.org/
[url=http://www.g01uao6h73504604lp7tlgejm9v6x1e8s.org/]uqbcwngyqhn[/url]
qbcwngyqhn http://www.g01uao6h73504604lp7tlgejm9v6x1e8s.org/
<a href="http://www.g01uao6h73504604lp7tlgejm9v6x1e8s.org/">aqbcwngyqhn</a>