有关资料下载链接:https://pan.baidu.com/s/1CLoxTSTGLsjV2pibKoHEiQ 密码:lrmu
一、刷机
准备工作:
1、一台运行Linux的计算机/虚拟机(版本为Ubuntu 14.04)。
2、剩余硬盘大于16G。
解压安装包
cd 到manifold_image_v1.0.tar.gz目录后解压
sudo tar -xvpzf ~/Downloads/manifold_image_v1.0.tar.gz
妙算进入恢复模式:
我这里使用的是方法二,注意按步骤进行。
在计算机的操作系统上输入lsusb命令,若出现ID 0955:7740 NVidia Corp. 字样则妙算进入恢复模式成功。
恢复出厂设置(不必制作镜像)
cd ~/Linux_for_Tegra sudo ./flash.sh jetson-tk1 mmcblk0p1
耐心等待,恢复成功后会显示 Flashed Successfully,否则重新烧录。
更新一下
sudo apt-get update sudo apt-get upgrade
切换为中文参考:https://jingyan.baidu.com/article/7f41ececea9b59593d095c85.html
注:校园网可能会下载不成功。
二、换源
(1)在“终端”中输入:sudo gedit /etc/apt/sources.list
因为使用了sudo,系统会要求输入密码,妙算或Jetson的初始密码是ubuntu,输入密码的时候linux系统不会显示你输入了什么,仿佛什么都没输入一样。
如果保守也可以先 sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup来备份原来的更新源;不想用gedit简单地编辑文本的话,也可用sudo vi /etc/apt/sources.list通过VIM编辑文本。(此处需自学Linux中vim的使用,之后的修改环境变量处也要用到;简单说就是光标移到需要修改的地方,按下o或者a进行修改,修改后按esc,再输入:wq完成保存退出返回到命令窗口)
(2)把打开的窗口中所有的内容删去,并替换成:
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty main multiverse restricted universe deb http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty-backports main multiverse restricted universe deb http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty-proposed main multiverse restricted universe deb http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty-security main multiverse restricted universe deb http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty-updates main multiverse restricted universe deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty main multiverse restricted universe deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty-backports main multiverse restricted universe deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty-proposed main multiverse restricted universe deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty-security main multiverse restricted universe deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ trusty-updates main multiverse restricted universe
保存并关闭窗口,回到命令窗口。
三、安装CUDA
1、cd到cuda-repo-l4t-r21.2-6-5-prod_6.5-34_armhf.deb的目录
2、执行以下命令安装 “cuda-repo-l4t-r21.2-6-5-prod_6.5-34_armhf.deb”至操作系统。
sudo dpkg -i cuda-repo-l4t-r21.2-6-5-prod_6.5-34_armhf.deb sudo apt-get update sudo apt-get install cuda-toolkit-6-5
四、安装OpenCv
1、安装 OpenCV4tegra
sudo dpkg -i libopencv4tegra-repo_l4t-r21_2.4.10.1_armhf.deb sudo apt-get update sudo apt-get install libopencv4tegra libopencv4tegra-dev
2.安装函数库
sudo add-apt-repository universe sudo apt-get update # Some general development libraries sudo apt-get install build-essential make cmake cmake-curses-gui g++ # libav video input/output development libraries sudo apt-get install libavformat-dev libavutil-dev libswscale-dev # Video4Linux camera development libraries sudo apt-get install libv4l-dev # Eigen3 math development libraries sudo apt-get install libeigen3-dev # OpenGL development libraries (to allow creating graphical windows) sudo apt-get install libglew1.6-dev # GTK development libraries (to allow creating graphical windows) sudo apt-get install libgtk2.0-dev
3.安装opencv源码
①解压
unzip opencv-2.4.10.zip mv opencv-2.4.10 ~
②Make
cd ~/opencv-2.4.10 mkdir build cd build cmake -DWITH_CUDA=ON -DCUDA_ARCH_BIN="3.2" -DCUDA_ARCH_PTX="" -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF .. sudo make -j4 install
③配置环境变量
echo "# Use OpenCV and other custom-built libraries." >> ~/.bashrc echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/" >> ~/.bashrc source ~/.bashrc
④测试
摄像头图像的拉普拉斯变换
# If you have a USB webcam plugged in to your board, then test one of the live camera programs and linking to every OpenCV module. g++ laplace.cpp -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_calib3d -lopencv_contrib -lopencv_features2d -lopencv_flann -lopencv_gpu -lopencv_legacy -lopencv_ml -lopencv_objdetect -lopencv_photo -lopencv_stitching -lopencv_superres -lopencv_video -lopencv_videostab -o laplace (Or for OpenCV 3.0: g++ laplace.cpp -lopencv_adas -lopencv_bgsegm -lopencv_bioinspired -lopencv_calib3d -lopencv_ccalib -lopencv_core -lopencv_datasets -lopencv_face -lopencv_features2d -lopencv_flann -lopencv_highgui -lopencv_imgcodecs -lopencv_imgproc -lopencv_latentsvm -lopencv_line_descriptor -lopencv_ml -lopencv_objdetect -lopencv_optflow -lopencv_photo -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_shape -lopencv_stitching -lopencv_superres -lopencv_surface_matching -lopencv_text -lopencv_tracking -lopencv_videoio -lopencv_video -lopencv_videostab -lopencv_xfeatures2d -lopencv_ximgproc -lopencv_xobjdetect -lopencv_xphoto -o laplace) ./laplace
五、QT的安装与配置
1.安装,使用apt-get
参考自:https://blog.youkuaiyun.com/m0_37857300/article/details/78932052sudo apt-get install qt4-dev-tools #开发包 sudo apt-get install qtcreator #IDE sudo apt-get install qt4-doc #开发帮助文档 sudo apt-get install qt4-qtconfig #配置工具 sudo apt-get install qt4-demos #DEMO源码 QT
2.配置
①.打开qt->Tools->Options->Build&Run
②.配置Qt Versions以及Compilers
在termial中输入which qmake以及which gcc把相应的地址添加进去
3.测试
新建一个控制台工程
在main.cpp中加入
#include <QCoreApplication> #include <cstdio> #include <iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> using namespace std; using namespace cv; int main(int argc, char* argv[]) { VideoCapture cap(0); /*open the default camera device*/ if(!cap.isOpened()) /*check open result*/ return false; cout<<"Original size:"<<cap.get(CV_CAP_PROP_FRAME_WIDTH)<<" "<<cap.get(CV_CAP_PROP_FRAME_HEIGHT)<<endl; cap.set(CV_CAP_PROP_FRAME_WIDTH,640); cap.set(CV_CAP_PROP_FRAME_HEIGHT,480); cap.set(CV_CAP_PROP_FPS, 60); cout<<"Modified size:"<<cap.get(CV_CAP_PROP_FRAME_WIDTH)<<" "<<cap.get(CV_CAP_PROP_FRAME_HEIGHT)<<endl; cvNamedWindow("camera show", CV_WINDOW_AUTOSIZE); cvNamedWindow("Gauss filter gray show", CV_WINDOW_AUTOSIZE); cvNamedWindow("Edage detection show", CV_WINDOW_AUTOSIZE); Mat frame; Mat gray; while(true) { cap >> frame; imshow("camera show", frame); cvtColor(frame, gray, CV_BGR2GRAY); //change color to gray GaussianBlur(gray, gray, Size(5,5), 1.5, 1.5); //Gauss filter imshow("Gauss filter gray show", gray); Canny(gray, gray, 0, 100, 3); //edage detection imshow("Edage detection show", gray); uchar c=cvWaitKey(10) ; if(c== 27) //press key “ESC” to quit from loop break; } return 0; }
在.pro文件中加入
SOURCES += main.cpp INCLUDEPATH += /usr/local/include \ /usr/local/include/opencv \ /usr/local/include/opencv2 LIBS += /usr/local/lib/libopencv_highgui.so \ /usr/local/lib/libopencv_core.so \ /usr/local/lib/libopencv_imgproc.so
实现效果为摄像头获取图像+边缘提取。
https://blog.youkuaiyun.com/u012348655/article/details/50564223
--By Young