forked from floratest1/SpireCV
temporary storage
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
#include <string>
|
||||
// 包含SpireCV SDK头文件
|
||||
#include <sv_world.h>
|
||||
#include <opencv2/opencv.hpp>
|
||||
#include <opencv2/imgproc.hpp>
|
||||
|
||||
using namespace std;
|
||||
|
||||
@@ -48,13 +50,17 @@ int main(int argc, char *argv[]) {
|
||||
|
||||
|
||||
// 打开摄像头
|
||||
sv::Camera cap;
|
||||
// sv::Camera cap;
|
||||
// cap.setWH(640, 480);
|
||||
// cap.setFps(30);
|
||||
cap.open(sv::CameraType::WEBCAM, 0); // CameraID 0
|
||||
// cap.open(sv::CameraType::WEBCAM, 0); // CameraID 0
|
||||
// cv::VideoCapture cap("/home/amov/SpireCV/test/tracking_1280x720.mp4");
|
||||
// 实例化OpenCV的Mat类,用于内存单帧图像
|
||||
|
||||
cv::VideoCapture cap;
|
||||
cap.open("/dev/video0");
|
||||
cv::Mat img;
|
||||
|
||||
int frame_id = 0;
|
||||
while (1)
|
||||
{
|
||||
|
||||
@@ -54,7 +54,7 @@ void gimbalNoTrack(void)
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
// 实例化吊舱
|
||||
gimbal = new sv::Gimbal(sv::GimbalType::G1, sv::GimbalLink::SERIAL);
|
||||
gimbal = new sv::Gimbal(sv::GimbalType::GX40, sv::GimbalLink::SERIAL);
|
||||
// 使用 /dev/ttyUSB0 作为控制串口
|
||||
gimbal->setSerialPort("/dev/ttyUSB0");
|
||||
// 以GimableCallback作为状态回调函数启用吊舱控制
|
||||
@@ -62,13 +62,13 @@ int main(int argc, char *argv[])
|
||||
// 定义相机
|
||||
sv::Camera cap;
|
||||
// 设置相机流媒体地址为 192.168.2.64
|
||||
cap.setIp("192.168.2.64");
|
||||
cap.setIp("192.168.144.108");
|
||||
// 设置获取画面分辨率为720P
|
||||
cap.setWH(1280, 720);
|
||||
// 设置视频帧率为30帧
|
||||
cap.setFps(30);
|
||||
// 开启相机
|
||||
cap.open(sv::CameraType::G1);
|
||||
cap.open(sv::CameraType::GX40);
|
||||
|
||||
// 定义一个新的窗口,可在上面进行框选操作
|
||||
cv::namedWindow(RGB_WINDOW);
|
||||
@@ -77,10 +77,10 @@ int main(int argc, char *argv[])
|
||||
// 实例化 框选目标跟踪类
|
||||
sv::SingleObjectTracker sot;
|
||||
// 手动导入相机参数,如果使用Amov的G1等吊舱或相机,则可以忽略该步骤,将自动下载相机参数文件
|
||||
sot.loadCameraParams(sv::get_home() + "/SpireCV/calib_webcam_640x480.yaml");
|
||||
sot.loadCameraParams(sv::get_home() + "/SpireCV/calib_webcam_1280x720.yaml");
|
||||
|
||||
sv::CommonObjectDetector cod;
|
||||
cod.loadCameraParams(sv::get_home() + "/SpireCV/calib_webcam_640x480.yaml");
|
||||
cod.loadCameraParams(sv::get_home() + "/SpireCV/calib_webcam_1280x720.yaml");
|
||||
|
||||
// 实例化OpenCV的Mat类,用于内存单帧图像
|
||||
cv::Mat img;
|
||||
@@ -94,6 +94,7 @@ int main(int argc, char *argv[])
|
||||
// 读取一帧图像到img
|
||||
cap.read(img);
|
||||
cv::resize(img, img, cv::Size(cod.image_width, cod.image_height));
|
||||
cv::imshow(RGB_WINDOW, img);
|
||||
|
||||
// 执行通用目标检测
|
||||
cod.detect(img, tgts);
|
||||
@@ -200,7 +201,7 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
} // end of tracking
|
||||
// 显示检测结果img
|
||||
cv::imshow(RGB_WINDOW, img);
|
||||
// cv::imshow(RGB_WINDOW, img);
|
||||
cv::waitKey(10);
|
||||
}
|
||||
return 0;
|
||||
|
||||
@@ -44,7 +44,7 @@ void onMouse(int event, int x, int y, int, void *);
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
// 实例化吊舱
|
||||
gimbal = new sv::Gimbal(sv::GimbalType::G1, sv::GimbalLink::SERIAL);
|
||||
gimbal = new sv::Gimbal(sv::GimbalType::GX40, sv::GimbalLink::SERIAL);
|
||||
// 使用 /dev/ttyUSB0 作为控制串口
|
||||
gimbal->setSerialPort("/dev/ttyUSB0");
|
||||
// 以gimableCallback作为状态回调函数启用吊舱控制
|
||||
@@ -52,13 +52,13 @@ int main(int argc, char *argv[])
|
||||
// 定义相机
|
||||
sv::Camera cap;
|
||||
// 设置相机流媒体地址为 192.168.2.64
|
||||
cap.setIp("192.168.2.64");
|
||||
cap.setIp("192.168.144.108");
|
||||
// 设置获取画面分辨率为720P
|
||||
cap.setWH(1280, 720);
|
||||
// 设置视频帧率为30帧
|
||||
cap.setFps(30);
|
||||
// cap.setWH(1280, 720);
|
||||
// // 设置视频帧率为30帧
|
||||
// cap.setFps(30);
|
||||
// 开启相机
|
||||
cap.open(sv::CameraType::G1);
|
||||
cap.open(sv::CameraType::GX40);
|
||||
|
||||
// 定义一个窗口 才可以在上面操作
|
||||
cv::namedWindow(RGB_WINDOW);
|
||||
@@ -80,6 +80,8 @@ int main(int argc, char *argv[])
|
||||
// 读取一帧图像到img
|
||||
cap.read(img);
|
||||
|
||||
std::cout << img.type() << std::endl;
|
||||
|
||||
// 执行Aruco二维码检测
|
||||
ad.detect(img, tgts);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user