検索
ホームページバックエンド開発PHPチュートリアルPHP 画像トリミング拡張機能 Tclip を MacOS にインストールする、_PHP チュートリアル

MacOS は PHP 画像トリミング拡張機能 Tclip をインストールします

Tclip は画像のトリミングに使用され、次の機能があります:

顔認識を実行できます。写真に顔が含まれている場合、顔部分は自動的に重要な領域とみなされ、トリミングされません。
他の重要な領域を自動的に識別します。画像内に顔が認識されない場合は、特徴分布に基づいて濃い領域が計算されます。
要約すると、画像のトリミング時に、画像内の重要な領域が自動的に識別され、保持されます。
ソースコードアドレス: https://github.com/exinnet/tclip

opencvをインストールする

github の手順によると、CentOS へのインストールは問題ありませんが、私の MacOS ではハングします。

最初に発生する問題は、opencv をインストールできないことです。幸いなことに、最新の opencv-2.4.11 を github からダウンロードし、正常にインストールできました。

ダウンロードアドレス: https://github.com/Itseez/opencv/releases

最新バージョンのOpenCV 2.4.11を使用してください

依存関係をインストールする

opencv をインストールする前に、いくつかの依存関係パッケージをインストールします:

コードをコピーします コードは次のとおりです:
brew install gtk+ pkgconfig libpng zlib libjpeg libtiff cmake

ヒント: brew のインストールと使用については、http://brew.sh/

を参照してください。

opencvをインストールする

opencv のインストールを開始します:

コードをコピーします コードは次のとおりです:
tar zxf opencv-2.4.11.tar.gz
cd opencv-2.4.11
cmakeCMakeLists.txt
作成&&作成インストール

php tclipをインストールします

まずダウンロード: https://github.com/exinnet/tclip/archive/master.zip

続いて:

コードをコピーします コードは次のとおりです:
tclip-master.zip を解凍します
cd tclip-master/php_ext
ぴぴせ
./configure

他に何も起こらなければ、この時点であなたは死んでいるはずです。

コードをコピーします コードは次のとおりです: デフォルトのパスにある opencv.pc ファイルを確認しています.../usr/lib/pkgconfig にあります
/usr/local/lib/pkgconfig にあります
構成: エラー: pkg-config opencv --libs --cflags opencv の結果がありません

Tclip 作者のページ http://www.bo56.com/tclip%E4%BA%BA%E8%84%B8%E8%AF%86%E5%88%AB%E5%9B%BE%E7 % 89%87%E8%A3%81%E5%89%AA/#ダウンロード

コメントでは、一部のネチズンも同様の問題に遭遇し、次の修正を提案しました:

config.m4の判定文test ${i:${#i}-3} = ".so"をtest ${i:${#i}-6} = ".dylib"に変更して、 46 行の .so の名前を .dylib に変更します

まだ結果なしエラーが表示されます~

config.m4 のコードを確認し、pkg-config opencv --libs --cflags を実行します。opencv の出力は次のとおりです。

コードをコピーします コードは次のとおりです: -I/usr/local/include/opencv -I/usr/local/include -L/usr/local/lib -lopencv_calib3d -lopencv_contrib -lopencv_core -lopencv_features2d -lopencv_flann -lopencv_gpu -lopencv_highgui -lopencv_imgproc -lopencv_legacy -lopencv_ml -lopencv _不自由- lopencv_objdetect -lopencv_ocl -lopencv_photo -lopencv_stitching -lopencv_superres -lopencv_ts -lopencv_video -lopencv_videostab

これは間違っていると感じたので、Linux のインストールが成功したサーバーにアクセスして実行したところ、次のような出力が得られました。

コードをコピーします

コードは次のとおりです: -I/usr/local/include/opencv -I/usr/local/include /usr/local/lib/libopencv_calib3d.so /usr/local/lib/libopencv_contrib.so /usr/local/lib/libopencv_core.so /usr /local/lib/libopencv_features2d.so /usr/local/lib/libopencv_flann.so /usr/local/lib/libopencv_gpu.so /usr/local/lib/libopencv_highgui.so /usr/local/lib/libopencv_imgproc.so /usr /local/lib/libopencv_legacy.so /usr/local/lib/libopencv_ml.so /usr/local/lib/libopencv_nonfree.so /usr/local/lib/libopencv_objdetect.so /usr/local/lib/libopencv_photo.so /usr /local/lib/libopencv_stitching.so /usr/local/lib/libopencv_ts.so /usr/local/lib/libopencv_video.so /usr/local/lib/libopencv_videostab.so
彼の判断コードをもう一度見てください:

コードをコピーします

コードは次のとおりです: OPENCV_FLAGS="`pkg-config opencv --libs --cflags opencv`" $OPENCV_FLAGS の私のために;そうしてください if テスト ${i:0:2} = "-I" ;then
PHP_ADD_INCLUDE(${i:2})
elif テスト ${i:${#i}-3} = ".so" ;then
dir_name=`ディレクトリ名 $i`
file_name=${i/$dir_name/}
file_name=${file_name//lib/}
file_name=${file_name/.so/}
PHP_ADD_LIBRARY_WITH_PATH($file_name,$dir_name,TCLIP_SHARED_LIBADD)
それ以外
AC_MSG_ERROR([pkg-config opencv --libs --cflags opencv の結果がありません])
ふぃ
完了しました


Linux では出力はすべて特定の .so パスであり、MacOS ではすべて相対パスであり、config.m4 では特定のパスと拡張子に基づいて判断されることがすぐにわかりました。問題を理解すると、解決策は簡単です。 。

pkg-config opencv --libs --cflags opencv の実行結果を特定のパスに変更し、config.m4 に置き換えます。

コードをコピーします コードは次のとおりです:
OPENCV_FLAGS="-I/usr/local/include/opencv -I/usr/local/include /usr/local/lib/libopencv_calib3d.dylib /usr/local/lib/libopencv_contrib.dylib /usr/local/lib/libopencv_core. dylib /usr/local/lib/libopencv_features2d.dylib /usr/local/lib/libopencv_flann.dylib /usr/local/lib/libopencv_gpu.dylib /usr/local/lib/libopencv_highgui.dylib /usr/local/lib/libopencv_imgproc dylib /usr/local/lib/libopencv_legacy.dylib /usr/local/lib/libopencv_ml.dylib /usr/local/lib/libopencv_nonfree.dylib /usr/local/lib/libopencv_objdetect.dylib /usr/local/lib/libopencv_photo. dylib /usr/local/lib/libopencv_stitching.dylib /usr/local/lib/libopencv_ts.dylib /usr/local/lib/libopencv_video.dylib /usr/local/lib/libopencv_videostab.dylib"

実行継続:

コードをコピーします コードは次のとおりです:
ぴぴせ
./configure
作る
インストールする

インストールは正常に完了しました。

以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。

この記事を友達と共有したり、コメントを残してください。皆様のご支援に心より感謝申し上げます。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/973283.html技術記事 MacOS には、PHP の画像トリミング拡張機能 Tclip がインストールされています。Tclip は画像のトリミングに使用され、次の機能を備えています。 顔認識を実行できます。写真に顔があれば、その顔部分が自動的に重要領域として認識されます...
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
PHPセッションに保存されているデータをどのように変更しますか?PHPセッションに保存されているデータをどのように変更しますか?Apr 27, 2025 am 12:23 AM

tomodifydatainaphpsession、starthessession withsession_start()、$ _sessiontoset、modify、orremovevariables.1)startthessession.2)

PHPセッションに配列を保存する例を示します。PHPセッションに配列を保存する例を示します。Apr 27, 2025 am 12:20 AM

配列はPHPセッションに保存できます。 1。セッションを開始し、session_start()を使用します。 2。配列を作成し、$ _Sessionで保存します。 3. $ _Sessionを介して配列を取得します。 4.セッションデータを最適化してパフォーマンスを向上させます。

Garbage CollectionはPHPセッションでどのように機能しますか?Garbage CollectionはPHPセッションでどのように機能しますか?Apr 27, 2025 am 12:19 AM

PHPセッションガベージコレクションは、有効期限が切れたセッションデータをクリーンアップするために確率メカニズムを通じてトリガーされます。 1)構成ファイルにトリガー確率とセッションのライフサイクルを設定します。 2)Cronタスクを使用して、高負荷アプリケーションを最適化できます。 3)データの損失を避けるために、ごみ収集の頻度とパフォーマンスのバランスを取る必要があります。

どのようにしてPHPでセッションアクティビティをトレースできますか?どのようにしてPHPでセッションアクティビティをトレースできますか?Apr 27, 2025 am 12:10 AM

PHPでのユーザーセッションアクティビティの追跡は、セッション管理を通じて実装されます。 1)SESSION_START()を使用してセッションを開始します。 2)$ _Sessionアレイを介してデータを保存およびアクセスします。 3)セッションを終了するには、session_destroy()を呼び出します。セッショントラッキングは、ユーザーの動作分析、セキュリティ監視、パフォーマンスの最適化に使用されます。

データベースを使用してPHPセッションデータを保存するにはどうすればよいですか?データベースを使用してPHPセッションデータを保存するにはどうすればよいですか?Apr 27, 2025 am 12:02 AM

データベースを使用してPHPセッションデータを保存すると、パフォーマンスとスケーラビリティが向上します。 1)MySQLを構成してセッションデータを保存します:PHP.iniまたはPHPコードでセッションプロセッサを設定します。 2)カスタムセッションプロセッサを実装します:データベースと対話するために、開いて、閉じ、読み取り、書き込み、その他の機能を定義します。 3)最適化とベストプラクティス:インデックス、キャッシュ、データ圧縮、分散ストレージを使用して、パフォーマンスを向上させます。

PHPセッションの概念を簡単に説明してください。PHPセッションの概念を簡単に説明してください。Apr 26, 2025 am 12:09 AM

phpssionsStrackuserdataacrossmultiplepagerequestsusingauniqueidstoredinacookie.here'showtomanageetheemefectively:1)Startassession withsession_start()andstoredatain $ _ session.2)RegeneratesseSsessidafterloginwithsession_id(the topreventes_id)

PHPセッションに保存されているすべての値をどのようにループしますか?PHPセッションに保存されているすべての値をどのようにループしますか?Apr 26, 2025 am 12:06 AM

PHPでは、次の手順を通じてセッションデータを繰り返すことができます。1。session_start()を使用してセッションを開始します。 2。$ _Sessionアレイのすべてのキー価値ペアを介してforeachループを反復します。 3.複雑なデータ構造を処理する場合、is_array()またはis_object()関数を使用し、print_r()を使用して詳細情報を出力します。 4.トラバーサルを最適化する場合、ページングを使用して、一度に大量のデータの処理を避けることができます。これにより、実際のプロジェクトでPHPセッションデータをより効率的に管理および使用するのに役立ちます。

ユーザー認証にセッションを使用する方法を説明します。ユーザー認証にセッションを使用する方法を説明します。Apr 26, 2025 am 12:04 AM

このセッションは、サーバー側の状態管理メカニズムを介してユーザー認証を実現します。 1)セッションの作成と一意のIDの生成、2)IDはCookieを介して渡されます。3)サーバーストアとIDを介してセッションデータにアクセスします。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません