
C++
zisuina_2
这个作者很懒,什么都没留下…
展开
-
C++ OPENCV 获得两矩形的交集矩形
获得两个矩形的交集,该交集类型也是矩形这种情况就范围交集的矩形,蓝色部分;这种情况返回 cv::Rect(cv::Point(0,0),cv::Point(0,0) );欢迎测试,提BUG;/** @brief 获得两个矩形的交集@param rect1; rect2 is lds range.@output cv::Rect 交集 */cv::Rect get_IOU(cv::Rect rect1, cv::Rect rect2){ // 横向和纵向距离 cout原创 2020-07-22 08:57:22 · 3349 阅读 · 1 评论 -
获得两张的单应矩阵
两张图片,至少找到4个对应的点,即可获得两张图的转换关系 cv::Mat src1(1280, 960, CV_8UC1, cv::Scalar(0)); circle(src, cv::Point(360,360), 15, cv::Scalar(255,255,255),CV_FILLED, 8,0); circle(src, cv::Point(760,360), 15, cv::Scalar(255,255,255),CV_FILLED, 8,0); circle原创 2020-07-08 16:06:27 · 256 阅读 · 0 评论 -
获得去除畸变的图像 c++ python版本 通用
简介去除畸变是图像处理最常用的操作,请获取去除畸变的多种方式!记得点赞!给苦逼的程序员一点动力。PYTHON 除畸变#获得去除畸变的图像def calibration(img): mtx = np.array([ [ 2.43714600e+02, 0., 3.56074585e+02], [0., 1.43695648e+02, 2.82849579e+02], [0, 0, 1]]) dist原创 2020-07-08 15:49:10 · 633 阅读 · 0 评论 -
反向推导Homography单应矩阵
import cv2import numpy as npdef read_map(filepath): f = open(filepath) map = np.fromfile(f, dtype=np.float32) return mapmaxpx_ = ".../robot/mapx"maxpy_ = ".../robot/mapy"mapx = read_map(maxpx_)mapx = np.reshape(mapx, (720, 1280))ma原创 2020-07-08 15:51:38 · 210 阅读 · 0 评论 -
chmod: changing permissions of : Read-only file system
chmod: changing permissions of : Read-only file system输入sudo chmod +777 *时报错,不给增加权限dmesg发现sdc1这个出问题,只能可读;1系统文件mount -rw -o remount /2移动硬盘或者U盘sudo mount -o remount,rw /dev/sdc1此时,进入文件系统,发现文件加锁,这是加权限即可sudo chmod +777 *...原创 2020-06-09 14:04:33 · 19407 阅读 · 0 评论 -
获得两条线段的(kx+b)中的b值
获得两条线段的(kx+b)中的b值float get_two_door_b_diff(cv::Vec4f line1, cv::Vec4f line2) { float deltaY1 = line1[1] -line1[3]; float deltaX1 = line1[0] -line1[2]; float deltaY2 = line2[1] - line2[3]; float deltaX2 = line2[0] - line2[2]; float k1,原创 2020-05-15 16:12:22 · 196 阅读 · 0 评论 -
c++ map 结构体作为key关键词
c++ map 结构体作为key关键词结构体的定义:这里的结构体是三个值 int x; int y; int label;当三个值作为KEY值时,你需要重新定义它的对比操作operator,这样才能对map进行查找操作;//数据结构声明;并且对key的查找操作进行定义,这样才能进行find等操作struct point{ int x; int y; ...原创 2020-05-08 15:49:46 · 4044 阅读 · 0 评论 -
opencv-bayes模型训练以及加载
此代码适用于opencv3数据集分开训练数据集和测试数据集合;训练模型代码 Ptr<ml::TrainData> train_data, test_data; train_data = ml::TrainData::loadFromCSV("../data/data_csv/data_train.csv",','); int i = train_data-&...原创 2020-04-30 10:29:23 · 342 阅读 · 0 评论 -
c++ opencv-点到直线的距离
-点到直线的距离: cv::Point center(1,2); cv::Point point_tl(2,2); cv::Point point_tr(3,2); float dis1 = getDist_P2L(center, point_tl, point_tr);/** @brief 判断一个点是否在一个矩形里@param PointpointP 点;.@param cv...原创 2020-04-30 10:06:46 · 4174 阅读 · 0 评论 -
获得凸包
vector<vector<Point> > contours; vector<Vec4i> hierarchy; /// 对图像进行二值化 /// 寻找轮廓 cv::Mat greyMat, colorMat; cv::cvtColor(map_test, greyMat, CV_B...原创 2020-04-27 16:31:20 · 146 阅读 · 0 评论 -
OPENCV C++ 找到最大内接矩形(正方形)
OPENCV-C++ 找到最大内接矩形(正方形)这源代码本来是检测最大内接圆形的,本人想要矩形,所以变成了正方形;谨慎使用;不是严格意义上的最大内接矩形;cv::Mat map_one_label = cv::imread("src.png",cv2.IMREAD_GRAYSCALE); //默认灰度图std::vector<Rect> max_in_quare_rect = ...原创 2020-04-27 09:34:50 · 7004 阅读 · 2 评论 -
opencv中Point(x,y)到底是(列,行)还是(行,列)
OpenCv中 Point( x , y) 到底是(列,行)还是(行,列)哈哈,被行和列搞混了,总是试一试解决问题,这次写一下,记一下,神烦:::估计很多人会和我一下:::用点划线 Point (x,y) -(列,行):Point(x,y) is using (x,y) as (column,row);在用点的时候是(列,行)for(int i=0;i<src.rows;i++){...原创 2019-10-18 09:36:55 · 5966 阅读 · 2 评论 -
c++ 四元数转欧拉角
c++ 四元数转欧拉角两种方法,供你选择;方法1;/*输入:x,y,z,w 为四元数输出:roll,pitch,yaw欧拉角**/static void toEulerAngle(const double x,const double y,const double z,const double w, double& roll, double& pitch, dou...原创 2019-10-15 15:57:56 · 6709 阅读 · 4 评论 -
Opencv C++ 判断一个点是否在一个矩形内(RECT)
OPENCV C++ 判断一个点是否在一个矩形内(RECT)在这里,线上的点也算在矩形内;如果不算线上的点,将isPointInRect中判断<= 和>= 都改为< 和>;// A code C++// An highlighted blockbool isPointInRect(Point P, Rect rect) { Point A = rec...原创 2019-10-11 14:07:34 · 4534 阅读 · 0 评论 -
C++ 对OPENCV rect矩形进行颜色填充
C++ 对OPENCV rect rectangle 矩形进行颜色填充// An highlighted block cv::Mat test_map(800,800,CV_8UC3,cv::Scalar(0,0,0)); Rect rec = cv::Rect(cv::Point(100,100),cv::Point(200,...原创 2019-10-11 14:02:07 · 5298 阅读 · 0 评论