系統制作
取一個U盤用作做電腦linux系統。
制作系統啟動盤網址:
https://www.cnblogs.com/coxiseed/p/9851459.html
按照這個做的linux系統會起不來,提示錯誤,需要改動一下其中的步驟,如下入所示↓,選擇紅色剪頭指向的選項即可。寫入鏡像后U盤控件會變成2兆大小,再次格式化重新換個選項即可恢復正常空間。
進入系統后聯網問題。
這個網址有介紹:
最后臨時解決辦法用手機連接數據線USB共享網絡功能。
系統版本要求
Ubuntu 18及以上即可。測試使用的是Ubuntu 20.04。
軟件准備
cuda和cudnn
軟件介紹
用顯卡計算需要安裝cuda和cudnn來支持。沒有則無需安裝。
先安裝cuda,再安裝對應版本的cudnn。
安裝步驟
查看 cuda 版本命令:nvcc -V
網址:Linux下安裝cuda和對應版本的cudnn (1024sky.cn)
嚴格按照下面得網址操作。提示相同,沒有問題。本地文件夾中有cuda相關得壓縮包。
(23條消息) Ubuntu20.04 安裝cuda和cudnn_Archy瞬的博客-CSDN博客_ubuntu20.04安裝cuda和cudnn
安裝cuda命令:
sudo sh cuda_9.0.176_384.81_linux.run
cuda安裝完成,輸入nvcc -V
命令查看cuda信息
用到的文件↓:
下面是官網下載介紹。公司網有時無法下載。也做個記錄。
Cuda下載:
Cudnn下載(需要注冊登錄):
OpenCV
軟件介紹
OpenCV是一個開源的跨平台計算機視覺庫,可以運行在Linux、Windows、Android和Mac OS操作系統上。提供了Python、Ruby、MATLAB等語言的接口,並且實現了圖像處理和計算機視覺方面的很多通用算法,可以給開發者調用
環境搭建
安裝opencv命令操作網址:按照下面的網址中命令進行編譯。
https://docs.opencv.org/4.5.4/d7/d9f/tutorial_linux_install.html
需要注意的是下載的解壓縮后要把.master的文件名放到主目錄中。如下圖所示↓
opencv安裝完畢編譯成功。在ubuntu系統中測試是否安裝成功↓
cd opencv –版本號/samples/cpp/example_cmake
cmake .
make
./opencv_example
安裝問題整理
安裝編譯Opencv會遇到很多問題。主要問題如圖示例:
問題記錄都有總結和說明↓。
***************************************************************************************************************************************************************
安裝opencv命令操作網址:
https://docs.opencv.org/4.5.4/d7/d9f/tutorial_linux_install.html
最后安裝cmake命令:
由於 由 root 用戶擁有,因此應使用提升的權限 () 執行安裝:/usr/local sudo
sudo make install
相關命令:**********************************************************************
查看cmake的版本:
cmake --version
查看當前路徑命令:pwd
Ubuntu查看OpenCV版本
pkg-config --modversion opencv
新建文件命令:
sudo touch videoio.h
執行命令測試:
heng@ubuntu:~/opencv/build$ cmake --build .
mkdir -p build && cd build
cmake -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-master/modules ../opencv-master
編譯完成,輸入sudo make install 進行安裝
提示:tessearct相關:下載tessearct
相關兩個網址:
https://copyfuture.com/blogs-details/20201208173533930bxpgaw7s24uhrwr
https://blog.csdn.net/cleanarea/article/details/85846257
1.$ cd ~ $ git clone https://github.com/tesseract-ocr/tesseract.git $ cd tesseract
2.使用cmake重新編譯,保證沒有錯誤
sudo ./autogen.sh
編譯命令:sudo ./configure
提示error:Leption 1.74 or higher is required...
編譯命令:sudo apt-get install libleptionica-dev
make
sudo make install
sudo make 最后有提示命令。
暫時編譯還提示找不到的話,先按照網址下載安裝編譯解決VTK問題。
安裝教程的命令,即可。再次編譯,兩者都找到了。
JNI安裝后重啟才會生效。
提示:# Module opencv_alphamat disabled because the following dependencies are not Found: Eigen3
解決:sudo apt-get install libeigen3-dev
提示: Module opencv_ovis disabled because OGRE3D was not found
這里需要安裝ogre3d,但是在安裝它之前,需要先安裝ois
1)從git上下載
sudo git clone https://github.com/ogre3d/OIS.git (提示無法訪問的話多試幾次,是網絡的問題。)
2)cmake一下,先新建build文件夾(cmake -H. -B.)
然后執行sudo make命令
完成 sudo make install
3)git上下載
https://github.com/OGRECave/ogre.git 安裝命令同上。
從github上下載ceres-solver
git clone https://github.com/ceres-solver/ceres-solver.git
重新編譯,記得在build文件中運行sudo make 然后 sudo make install 安裝命令同上。
可能出現問題:fatal error:pugixml.hpp:沒有那個文件或目錄
sudo apt-get install libpugixml-dev
# google-glog + gflags
sudo apt-get install libgoogle-glog-dev
# BLAS & LAPACK
sudo apt-get install libatlas-base-dev
sudo add-apt-repository ppa:bzindovic/suitesparse-bugfix-1319687
sudo apt-get update
sudo apt-get install libsuitesparse-dev
編譯提示:imgcodes:OpenEXR codec is disabled in runtime.Details:http://git......
解決:sudo apt-get install libopenexr-dev zlib1g-dev
sudo apt install python3-pip
pip install OpenEXR
問題:提示libva.h找不到head(大概)
http://www.mamicode.com/info-detail-175931.html
解決:
$ git clone git://anongit.freedesktop.org/wayland/wayland
$ cd wayland(看里面的readme文件編譯 重啟就好了。)
$ ./autogen.sh --prefix=$WLD
$ make && make install
$ cd .
提示找不到BLAS, Atlas, LAPACK:
一定要按照網址提示安裝。仔細一點,確定編譯成功,並把相關得庫文件考到對應目錄。卡了兩天
https://copyfuture.com/blogs-details/20201208173533930bxpgaw7s24uhrwr
cblas 文件夾中:Makefile.in 中BLLIB = libblas.a 需要加完全路徑。/usr/local/lib/libblas.a
Lapack文件夾中:make.inc中 末尾:也都加相應路徑:/usr/local/lib/XXX.a
編譯失敗記得make clean 再重新編譯。
相關命令:**********************************************************************
問題:CMake Error at CMakeLists.txt:3 (project):
No CMAKE_CXX_COMPILER could be found.
原因:缺庫
解決:
sudo apt-get update
sudo apt-get install -y build-essential
opencv編譯安裝--踩坑👇。先看這幾個!!
https://blog.csdn.net/cleanarea/article/details/85846257
https://copyfuture.com/blogs-details/20201208173533930bxpgaw7s24uhrwr
https://blog.csdn.net/sheqianweilong/article/details/102646929
在下載的過程中,我們可以添加opencv所需要的依賴庫:
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
錯誤:*********************************************************************************************************************************
提示-:-------------- Looking for ccache -not found
解決命令-:----------sudo apt-get install ccache
提示-:-------------- Could NOT find HDF5
解決命令-:----------sudo apt-get install libhdf5-dev
安裝python 命令 要不編譯opencv 報錯1.
sudo apt-get install python-dev
安裝libgtk3庫.要不編譯opencv 報錯2.
sudo apt-get install libgtk-3-dev
安裝gtk2.0.要不編譯opencv 報錯3.
sudo apt-get install libgtk2.0-dev
安裝aptitude命令:報錯4.
sudo apt-get install aptitude
安裝下列包命令:報錯5.
sudo aptitude install libavcodec-dev libavformat-dev libswscale-dev libavutil-dev
安裝下列包命令:報錯6.
sudo apt-get install libjpeg-dev
安裝下列包命令:報錯7.
Could NOT find TIFF (missing: TIFF_LIBRARY TIFF_INCLUDE_DIR)
sudo apt-get install libtiff5-dev
https://www.cnblogs.com/rohens-hbg/p/12326084.html
問題1:
E: Unable to locate package libjasper-dev
解決方法:
https://blog.csdn.net/weixin_41053564/article/details/81254410
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev
成功的解決了問題,其中libjasper1是libjasper-dev的依賴包
問題2:
No package 'gstreamer-base-1.0' found
解決方法:
https://stackoverflow.com/questions/37678324/compiling-opencv-with-gstreamer-cmake-not-finding-gstreamer
sudo apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
問題3:
No package 'libavresample' found
解決方法:
sudo apt-get install libavresample-dev
問題4:
No package 'libgphoto2' found
解決方法:
sudo apt-get install libgphoto2-dev
問題5:
IPPICV: Download failed: 7;"Couldn't connect to server"
解決方法:
問題6:
Could not find OpenBLAS include. Turning OpenBLAS_FOUND off
-- Could not find OpenBLAS lib. Turning OpenBLAS_FOUND off
-- Could NOT find Atlas (missing: Atlas_CBLAS_INCLUDE_DIR Atlas_CLAPACK_INCLUDE_DIR Atlas_CBLAS_LIBRARY Atlas_BLAS_LIBRARY Atlas_LAPACK_LIBRARY)
-- A library with BLAS API not found. Please specify library location.
-- LAPACK requires BLAS
-- A library with LAPACK API not found. Please specify library location.
-- Could NOT find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)
-- Could NOT find Matlab (missing: MATLAB_MEX_SCRIPT MATLAB_INCLUDE_DIRS MATLAB_ROOT_DIR MATLAB_LIBRARIES MATLAB_LIBRARY_DIRS MATLAB_MEXEXT MATLAB_ARCH MATLAB_BIN)
-- VTK is not found. Please set -DVTK_DIR in CMake to VTK build directory, or to VTK install subdirectory with VTKConfig.cmake file
CMake Error at cmake/OpenCVModule.cmake:288 (message):
No modules has been found:
/home/program/opencv-3.4.2/opencv_contrib-3.4.0/modules
Call Stack (most recent call first):
cmake/OpenCVModule.cmake:368 (_glob_locations)
modules/CMakeLists.txt:7 (ocv_glob_modules)
解決方法:
sudo apt-get install libopenblas-dev
https://blog.sciencenet.cn/blog-3233813-1001369.html
問題7:
fatal error: linux/videodev.h: No such file or directory
fatal error: sys/videoio.h: No such file or directory
問題8:No package 'libdc1394' found 已解決
sudo apt-get install libdc1394-22-dev
無法獲取 dpkg 前端鎖 (/var/lib/dpkg/lock-frontend),請查看您是否正以 root 用戶運行?
解鎖命令:heng@ubuntu:~$ sudo rm /var/lib/dpkg/lock-frontend
問題9:-- Could NOT find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)
https://www.cnblogs.com/renfu/p/12898040.html
解決編譯opencv時,卡在IPPICV: Download: ippicv_2020_lnx_intel64_20191018_general.tgz
https://blog.csdn.net/qq_43478260/article/details/109458079
IPPICV: Download failed: 37;"Couldn't read a file:// file"
這里就要注意ippicv.cmake文件中,這一句:
if(X86_64)
set(OPENCV_ICV_NAME "ippicv_2020_lnx_intel64_20191018_general.tgz")
的("ippicv_2020_lnx_intel64_20191018_general.tgz")是否與你下載的壓縮包文件名稱是否一致。
壓縮包放在下列路徑下方。
"file:///home/test/download/
"file:///home/heng/ippicv_2020/"
配置不完整,出現錯誤!
Configuring incomplete, errors occurred!
錯誤:*********************************************************************************************************************************
安裝 opencv 所需依賴包
https://blog.csdn.net/weixin_41896508/article/details/80795239
*******************************************************************************************************************************************************************
相關需要下載的文件已經保存在文件夾中:↓用到的文件用紅色圈畫出來了。其他是出問題的文件做個保留,出現問題會用的到。
編譯最后提示Configuring done、Generating done、-- Build files have been written to: /home/heng/build即完成。
到此opencv配置完成。
Darknet框架
介紹
darknet是一個較為輕型的完全基於C與CUDA的開源深度學習框架,其主要特點就是容易安裝,沒有任何依賴項(OpenCV都可以不用),移植性非常好,支持CPU與GPU兩種計算方式。
安裝步驟和相關命令
yolov3安裝過程和和相關命令
Linux 直接從網上git下載。
git clone https://github.com/pjreddie/darknet.git
cd darknet
make
運行命令:
./darknet
您應該得到輸出:usage: ./darknet <function>
說明此此時darknet成功安裝。
測試命令:
./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
會在文件夾生成一個“prediction.jpg”圖片。有opencv會自動彈出窗口。
Yolov4安裝過程和和相關命令
https://blog.csdn.net/weixin_44771532/article/details/105495755
首先把代碼下載下來,可以用下面命令下載。
git clone https://github.com/AlexeyAB/darknet.git
1.編譯
如果需要使用GPU加速,那么得打開項目里面的makefile文件修改一些參數的值。修改完成之后在直接make。
GPU=1
CUDNN=1
CUDNN_HALF=1
OPENCV=1
OPENMP=1
LIBSO=1
DEBUG=1
# cd到darknet-master目錄下
make
或者 make -j8
2.測試一下開源權重
# 測試圖片,結果保存在darknet-master/predictions.jpg
./darknet detect cfg/yolov4.cfg yolov4.weights data/dog.jpg
3.准備自己要訓練的數據集,以voc數據集的格式存放
先按照上面格式准備好數據
Annotations是存放標簽xml文件
JPEGImage 存放圖片
ImageSets 里面txt按行存放着圖片名字
如
000001
000002
000003…
4.制作yolov4需要的label以及txt
這個時候只用voc數據集的格式是不滿足我們這里需要的格式。首先打開路徑下 build/darknet/x64/data/voc/voc_label.py,修改voc_label.py里面的內容。
先把7行的關於2012的去掉,再把第9行改成自己的類別。
接着給每個路徑前面加個data,如下圖
修改完了之后在主目錄darknet-master下執行voc_label.py,否則哪些文件會生成在build/darknet/x64/data下面,執行完成后你會看到主目錄下的data/目錄下會生成幾個txt。主目錄darknet-master下的data/VOCdevkit/VOC2007/下面會生成一個label文件夾。
5.修改配置文件
<a.>cfg/目錄下復制coco.data,並且重命名為obj.data。然后使用修改下面以下內容
<b.>cfg/目錄下復制coco.names,並且重命名為obj.names。改成自己類別的名稱
<c.>復制cfg/yolov4-custom.cfg,並且重命名為yolo-obj.cfg,同時修改一下內容
上圖中修改width和height為416,修改最大batch迭代多少個數max_batches = 6000,修改steps多久學習率下降一次,一般設置為batch個數的80%和90%。
然后三個classes的地方要修改
還有三個filters=255的地方要修改成自己的。
6.開始訓練自己的數據集
./darknet detector train cfg/obj.data cfg/yolo-obj.cfg yolov4.conv.137
如若報錯這個錯誤,則將cfg/yolo-obj.cfg 里面26行mosaic=1改成mosaic=0或者注釋掉。沒報錯就忽略。
下圖為訓練時的狀態界面,紅色圈內為剩余時間。
7.預測
./darknet detector test cfg/obj.data cfg/yolo-obj.cfg yolo-obj_xxxx.weights
相關軟件介紹-labelImg
識別訓練過程需要標注工具標注圖片。
labelImg安裝步驟
Linux下載命令下圖所示↓
使用視頻學習網址推薦:
https://www.bilibili.com/video/BV1V44y1i7Av/
linux labelImg打開命令:
cd labelImg
sudo make qt5py3
python3 labelImg.py
寫的很詳細。
https://www.cnblogs.com/answerThe/p/11481564.html
https://pjreddie.com/darknet/yolo/
windows安裝使用:
本地文件夾中labelImg-master文件是windows圖像標注工具。windows啟動命令↓:
Anaconda 是相關環境工具。
Darknet 安裝問題記錄
在darknet-master文件夾目錄下,執行編譯執行文件命令:./build.sh
可能會提示:./build 找不到命令
解決方式:鼠標右鍵build.sh文件,選擇屬性-權限-將允許執行文件(E)進行勾選,再次操作。
提示:Couldn’t open file:data/XXXX
一般就是文件路徑寫的有問題,設置成絕對路徑:/home/user/darknet/data/XXXX.
需要注意的是路徑改成自己的路徑。Python里路徑格式為:
C:\\Users\wz\Desktop\VOCdevkit\VOC2007 C:后面是兩個\\。
軟件運行相關命令
1、創建文件夾
mkdir -p 文件夾名
p 確保目錄名稱存在,不存在的就建一個。
2、創建文件
如:touch a.txt
3、運行pthon文件命令
python test.py