MacOS 安裝 PHP的圖片裁剪擴展Tclip
來源:易賢網(wǎng) 閱讀:690 次 日期:2015-03-27 11:06:10
溫馨提示:易賢網(wǎng)小編為您整理了“MacOS 安裝 PHP的圖片裁剪擴展Tclip”,方便廣大網(wǎng)友查閱!

Tclip是一個頭像自動識別,php圖片裁剪項目。他可以自動識別圖片中的重要區(qū)域,并且在圖片裁剪時保留重要區(qū)域。下面我們就來看看如何在MacOS上進行安裝。

Tclip 用于圖片裁剪,有以下特點:

能進行人臉識別。圖片中有人臉,將自動視為人臉區(qū)域為重要區(qū)域,將不會被裁剪掉。

自動識別其它重要區(qū)域。如果圖片中未識別出人臉,則會根據(jù)特征分布計算出重區(qū)域。

總而言之,自動識別圖片中的重要區(qū)域,并且在圖片裁剪時保留重要區(qū)域。

源碼地址:

安裝opencv

根據(jù)github上的說明,在CentOS上安裝沒有問題,但在我的MacOS上就掛了。

首先遇到的問題就是,opencv安裝不過去。還好,上github下載最新的opencv-2.4.11 安裝成功。

下載地址:

使用當前最新版本 OpenCV 2.4.11

安裝依賴

在安裝opencv之前,先安裝一些依賴包:

代碼如下:

brew install gtk+ pkgconfig libpng zlib libjpeg libtiff cmake

提示: brew的安裝使用請參考

安裝opencv

開始安裝 opencv:

代碼如下:

tar zxf opencv-2.4.11.tar.gz

cd opencv-2.4.11

cmake CMakeLists.txt

make && make install

安裝php tclip

先下載:

然后繼續(xù):

代碼如下:

unzip tclip-master.zip

cd tclip-master/php_ext

phpize

./configure

如果不出意外,到這一步,應(yīng)該就掛掉了,提示:

代碼如下:

checking for opencv.pc file in default path... found in /usr/lib/pkgconfig

found in /usr/local/lib/pkgconfig

configure: error: no result from pkg-config opencv --libs --cflags opencv

在 Tclip 作者的頁面上

評論中,也有網(wǎng)友遇到了類似的問題,提出修改辦法為:

將 config.m4 中的 判斷語句test ${i:${#i}-3} = “.so”,改為 test ${i:${#i}-6} = ".dylib”,并嘗試將46行的.so 也改稱 .dylib

依然提示no result的錯誤~

再翻翻config.m4的代碼和執(zhí)行 pkg-config opencv --libs --cflags opencv的輸出結(jié)果:

代碼如下:

-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_nonfree -lopencv_objdetect -lopencv_ocl -lopencv_photo -lopencv_stitching -lopencv_superres -lopencv_ts -lopencv_video -lopencv_videostab

感覺怎么對不上,于是跑到Linux安裝成功的服務(wù)器執(zhí)行了一下,輸出結(jié)果如下:

代碼如下:

-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`"

for i in $OPENCV_FLAGS;do

if test ${i:0:2} = "-I" ;then

PHP_ADD_INCLUDE(${i:2})

elif test ${i:${#i}-3} = ".so" ;then

dir_name=`dirname $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)

else

AC_MSG_ERROR([no result from pkg-config opencv --libs --cflags opencv])

fi

done

我立刻就明白了,Linux上輸出的都是具體的.so路徑,MacOS上都是相對的路徑,而config.m4中是根據(jù)具體路徑和擴展名判斷的,明白了問題,解決就簡單了。

將 pkg-config opencv --libs --cflags opencv 的執(zhí)行結(jié)果修改為具體的路徑,并替換到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"

再繼續(xù)執(zhí)行:

代碼如下:

phpize

./configure

make

make install

順利安裝完成。

以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。

更多信息請查看IT技術(shù)專欄

更多信息請查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機網(wǎng)站地址:MacOS 安裝 PHP的圖片裁剪擴展Tclip

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)