欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MacOS 安裝 PHP的圖片裁剪擴展Tclip

 更新時間:2015年03月25日 16:55:05   投稿:hebedich  
Tclip是一個頭像自動識別,php圖片裁剪項目。他可以自動識別圖片中的重要區(qū)域,并且在圖片裁剪時保留重要區(qū)域。下面我們就來看看如何在MacOS上進行安裝。

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

能進行人臉識別。圖片中有人臉,將自動視為人臉區(qū)域為重要區(qū)域,將不會被裁剪掉。
自動識別其它重要區(qū)域。如果圖片中未識別出人臉,則會根據(jù)特征分布計算出重區(qū)域。
總而言之,自動識別圖片中的重要區(qū)域,并且在圖片裁剪時保留重要區(qū)域。
源碼地址:https://github.com/exinnet/tclip

安裝opencv

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

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

下載地址: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
cmake CMakeLists.txt
make && make install

安裝php tclip

先下載:https://github.com/exinnet/tclip/archive/master.zip

然后繼續(xù):

復制代碼 代碼如下:

unzip tclip-master.zip
cd tclip-master/php_ext
phpize
./configure

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

復制代碼 代碼如下:

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 作者的頁面上 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/#download

評論中,也有網(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)容了,希望大家能夠喜歡。

請您花一點時間將文章分享給您的朋友或者留下評論。我們將會由衷感謝您的支持!

相關(guān)文章

  • 基于ThinkPHP實現(xiàn)批量刪除

    基于ThinkPHP實現(xiàn)批量刪除

    這篇文章主要介紹了基于ThinkPHP實現(xiàn)批量刪除的代碼實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2015-12-12
  • php rename錯誤原因的查找方法

    php rename錯誤原因的查找方法

    在本篇文章里小編給大家整理的是一篇關(guān)于php rename錯誤原因的查找方法,有需要的朋友們可以跟著學習參考下。
    2021-07-07
  • php限制文件下載速度的代碼

    php限制文件下載速度的代碼

    這篇文章主要介紹了php限制文件下載速度的代碼,配有詳細的代碼分析,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-10-10
  • php保存二進制原始數(shù)據(jù)為圖片的程序代碼

    php保存二進制原始數(shù)據(jù)為圖片的程序代碼

    得到post過來的二進制原始數(shù)據(jù),選擇一個生成路徑及圖片的名字,之后寫入,思路很顯而易見,需要的朋友可以收藏下
    2014-10-10
  • php 常用類整理

    php 常用類整理

    在實際開發(fā)過程會經(jīng)常會遇到一些重復的操作,如果每次都要自己去實現(xiàn)這無疑加重了自己的工作量,下面對一些可能經(jīng)常用到的類做個整理.
    2009-12-12
  • php實現(xiàn)singleton()單例模式實例

    php實現(xiàn)singleton()單例模式實例

    這篇文章主要介紹了php實現(xiàn)singleton()單例模式的方法,以實例形式簡單講述了單例模式的實現(xiàn)過程,需要的朋友可以參考下
    2014-11-11
  • thinkphp修改配置進入默認首頁的方法

    thinkphp修改配置進入默認首頁的方法

    本文介紹了thinkphp修改配置進入默認首頁的方法,具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • PHP對象鏈式操作實現(xiàn)原理分析

    PHP對象鏈式操作實現(xiàn)原理分析

    這篇文章主要介紹了PHP對象鏈式操作,結(jié)合實例形式分析了鏈式操作的簡單用法及對象鏈式操作的執(zhí)行流程,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-10-10
  • PHP日期和時間函數(shù)的使用示例詳解

    PHP日期和時間函數(shù)的使用示例詳解

    這篇文章主要介紹了PHP日期和時間函數(shù)的使用示例詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-08-08
  • PHP偽靜態(tài)Rewrite設(shè)置之APACHE篇

    PHP偽靜態(tài)Rewrite設(shè)置之APACHE篇

    Rewirte主要的功能就是實現(xiàn)URL的跳轉(zhuǎn)和隱藏真實地址,基于Perl語言的正則表達式規(guī)范。平時幫助我們實現(xiàn)擬靜態(tài),擬目錄,域名跳轉(zhuǎn),防止盜鏈等
    2014-07-07

最新評論