解決CentOS上OpenCV無法讀取影片檔的方法
在CentOS下,按照教學的步驟安裝OpenCV,但到最後無法讀取影片文件,原因是缺少了ffmpeg。於是透過CentOS中的軟體管理安裝ffmqeg,但還是沒有效果。然後對ffmpeg進行編譯,還是沒有效果。其實漏了一個關鍵步驟,就是將ffmpeg於OpenCV關聯起來。具體如下:
1、取得ffmpeg:
透過cvs下載ffmpeg, 命令列輸入: svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg
2、設定ffmpeg:
進入ffmpeg目錄,執行./configure --enable-shared --prefix=/usr (enabled-shared估計都知道意思,但是為什麼要prefix=/usr呢,這得從opencv的CMakeLists.txt和heighgui下的cvcap_ffmpeg.cpp說起了,這裡涉及到的問題不要使路徑問題,但是也就是這個問題,搞得我去了一個早上。cMakeLists.txt中關於檢測是否有安裝ffmpeg時,默認是到/usr下去偵測對應的頭檔之類的是否存在的,但是ffmpeg的預設安裝是安裝在/usr/local下的,問題就來了,所以改一下安裝路徑opencv在cmake .時就無法偵測到你是否已經安裝了ffmpeg);
3、make;su -c "make install";
4、接下來要做的工作就是關係到opencv能否成功將ffmpeg的相關頭檔編譯進來的問題了:
4.1)首先在/usr/include下執行以下命令(root):
mkdir ffmpeg;
cp libav* libsw* ffmpeg; //之所以這麼做,是因為opencv configure時檢查是否已安裝ffmpeg就是在這
檢查的
4.2)cmake .; //注意,cmake 和.之間有空格, 如果
configure結果中ffmpeg為1,不是之前的0,表示我們成功了。
4.3)make install;
5、將/usr/local/lib/pkgconfig下的opencv.pc cp到/usr/lib/pkgconfig下,這一步也可以做,只是一個配置文件,大不了編譯時自己指定頭文件跟庫麼,其實你打開opencv.pc一看就知道是什麼玩意了。
6、root下, vim /etc/ld.so.conf, 增加一行, /usr/local/lib (因為opencv的庫檔案在local,預設情況下local/lib中的庫檔案是不在系統啟動時被load的)
#7、ldconfig。
以上是解決CentOS上OpenCV無法讀取影片檔的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

使用pip命令輕鬆安裝OpenCV教程,需要具體程式碼範例OpenCV(OpenSourceComputerVisionLibrary)是一個開源的電腦視覺庫,它包含了大量的電腦視覺演算法和函數,可以幫助開發者快速建立圖像和視訊處理相關的應用程式。在使用OpenCV之前,我們需要先安裝它。幸運的是,Python提供了一個強大的工具pip來管理第三方函式庫

OpenCV是一種用於電腦視覺和影像處理的開源庫,廣泛應用於機器學習、影像辨識、視訊處理等領域。在使用OpenCV進行開發時,為了能夠更好地調試和運行程序,許多開發者選擇使用PyCharm這款強大的Python整合開發環境。本文將為PyCharm用戶提供OpenCV的安裝教學課程,並附上具體的程式碼範例。第一步:安裝Python首先,請確保您已經安裝了Python

1.影像金字塔理論基礎影像金字塔是影像多尺度表達的一種,是一種以多重解析度來解釋影像的有效但概念簡單的結構。一幅圖像的金字塔是一系列以金字塔形狀排列的解析度逐步降低,且來自同一張原始圖的圖像集合。其透過梯次向下採樣獲得,直到達到某個終止條件才停止採樣。我們將一層一層的圖像比喻成金字塔,層級越高,則影像越小,解析度越低。那我們為什麼要做圖像金字塔呢?這就是因為改變像素大小有時候並不會改變它的特徵,比方說給你看1000萬像素的圖片,你能知道裡面有個人,給你看十萬像素的,你也能知道裡面有個人,但是對計

一、專案效果二、核心流程1、openCV讀取視訊串流、在每一幀圖片上畫出一個矩形。 2.使用mediapipe取得手指關鍵點座標。 3.根據手指座標位置和矩形的座標位置,判斷手指點是否在矩形上,如果在則矩形跟隨手指移動。三、程式碼流程環境準備:python:3.8.8opencv:4.2.0.32mediapipe:0.8.10.1註:1、opencv版本過高或過低可能出現一些如鏡頭打不開、閃退等問題,python版本影響opencv可選擇的版本。 2、pipinstallmediapipe後可能導致op

JavaOpenCV函式庫的org.opencv.imgproc套件包含一個名為Imgproc的類,該類別提供了各種方法來處理輸入影像。它提供了一組在圖像上繪製幾何形狀的方法。要繪製一個帶有箭頭的線條,您需要呼叫這個類別的arrowedLine()方法。此方法接受以下參數:表示要在其上繪製線條的影像的Mat物件。表示線條之間的兩點的Point物件。 drawn.表示線條顏色的Scalar物件。 (BGR)表示線條厚度的整數(預設值:1)。範例importorg.opencv.core.Core;importo

如何使用PHP和OpenCV庫實現視訊處理?摘要:在現代科技應用中,視訊處理已成為一項重要的技術。本文將介紹如何使用PHP程式語言結合OpenCV函式庫來實作一些基本的視訊處理功能,並附上對應的程式碼範例。關鍵字:PHP、OpenCV、視訊處理、程式碼範例引言:隨著網路的發展和智慧型手機的普及,影片內容已成為人們生活中不可或缺的一部分。然而,要實現影片的編輯和

影像分割與擷取影像中將前景物件作為目標影像分割或提取出來。背景本身並無興趣分水嶺演算法及GrabCut演算法對影像進行分割及擷取。用分水嶺演算法實現影像分割與提取分水嶺演算法將影像形象化為地理上的地形表面,實現影像分割,該演算法非常有效。演算法原理任何一幅灰階影像,都可以被視為地理學上的地形表面,灰階值高的區域可以被看成是山峰,灰階值低的區域可以被看成是山谷。左圖是原始影像,右圖是其對應的「地形表面」。過程將影像分成兩個不同的集合:集水盆地和分水嶺線。我們建造的堤防就是分水嶺線,也即對原始影像

PyCharm是一款由JetBrains公司開發的強大的Python整合開發環境(IDE),提供了豐富的功能和工具來幫助Python開發者編寫程式碼、除錯程式以及管理專案。在PyCharm中使用OpenCV這一強大的電腦視覺庫,可以輕鬆地進行影像處理、視訊處理等任務。本文將詳細介紹在PyCharm中安裝和設定OpenCV的步驟,並提供具體的程式碼範例。 1.安
