4000-520-616
欢迎来到免疫在线!(蚂蚁淘生物旗下平台)  请登录 |  免费注册 |  询价篮
主营:原厂直采,平行进口,授权代理(蚂蚁淘为您服务)
咨询热线电话
4000-520-616
当前位置: 首页 > 新闻动态 >
热卖商品
新闻详情
tegra-tx1笔记,gstreamer抓取板载摄像头视频内容,并传给opencv...
来自 : www.cppblog.com/TianShiDeBaiGu 发布时间:2021-03-24
#include opencv2/imgproc/imgproc.hpp
#include opencv2/features2d/features2d.hpp
#include opencv2/calib3d/calib3d.hpp
usingnamespacecv;
intmain(int,char**)
{
VideoCaptureinput(\"./stream.sdp\");
if(!input.isOpened()){//checkifwesucceeded
std::cout \"openfailed\" std::endl;
return-1;
}
Matimg,img_gray;
OrbFeatureDetectordetector(7000);
vector KeyPoint img_keypoints,car_keypoints;
Matimg_descriptors,car_descriptors;
input.read(img);
Matcar;
img(Rect(400,320,150,100)).copyTo(car);
detector(car,Mat(),car_keypoints,car_descriptors);
drawKeypoints(car,car_keypoints,car);
for(;;)
{
if(!input.read(img))
break;
detector(img,Mat(),img_keypoints,img_descriptors);
drawKeypoints(img,img_keypoints,img);
BFMatchermatcher;
vector DMatch matches;
matcher.match(car_descriptors,img_descriptors,matches);
vector Point2f car_points,img_points;
for(inti=0;i matches.size();++i){
car_points.push_back(car_keypoints[matches[i].queryIdx].pt);
img_points.push_back(img_keypoints[matches[i].queryIdx].pt);
}
std::cout \"carpointscount=\" car_points.size() std::endl;
if(car_points.size() =4){
Matx33fH=findHomography(car_points,img_points,CV_RANSAC);
vector Point car_border,img_border;
car_border.push_back(Point(0,0));
car_border.push_back(Point(0,car.rows));
car_border.push_back(Point(car.cols,car.rows));
car_border.push_back(Point(car.cols,0));
for(size_ti=0;i car_border.size();++i){
Vec3fp=H*Vec3f(car_border[i].x,car_border[i].y,1);
img_border.push_back(Point(p[0]/p[2],p[1]/p[2]));
}
polylines(img,img_border,true,CV_RGB(255,255,0));
Matimg_matches;
drawMatches(car,car_keypoints,img,img_keypoints,matches,img_matches);
imshow(\"img_matches\",img_matches);
}
//imshow(\"car\",car);
//imshow(\"img\",img);
if(waitKey(27) =0)break;
}
//thecamerawillbedeinitializedautomaticallyinVideoCapturedestructor
return0;
编译的makefile会麻烦一点:先写一个cmake的配置文件CMakeLists.txtcmake_minimum_required(VERSION2.8)
project(hello)
find_package(OpenCVREQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(cv_hellohello.cpp)
target_link_libraries(cv_hello${OpenCV_LIBS})执行命令:cmake ./ make然后生成cv_hello,可以执行。关键配置文件是stream.sdp文件,这个文件帮我减少了命令行的麻烦。内容如下:[stream.sdp]
c=INIP4127.0.0.1
m=video5000RTP/AVP96
a=rtpmap:96JPEG/4000000全部内容结束。可以看到摄像头的视频内容了

本文链接: http://caravenc.immuno-online.com/view-691297.html

发布于 : 2021-03-24 阅读(0)
公司介绍
品牌分类
联络我们
服务热线:4000-520-616
(限工作日9:00-18:00)
QQ :1570468124
手机:18915418616
官网:http://