
opencv
视界音你而不同
音视频开发者
展开
-
视频编辑器系列课程(导语)
简单粗暴,诙谐的邀你开启一段关于视频编辑器的学习历程。 同时也可关注公号学习。原创 2018-01-11 09:32:12 · 339 阅读 · 0 评论 -
视频编辑器之--“怀了”
#include #include using namespace cv; int main(int argc, char *argv[]) { Mat image = imread("1.png", 0); namedWindow("img"); imshow("img", image); waitKey(0); return 0; }原创 2018-01-15 09:11:33 · 260 阅读 · 0 评论 -
看“他”怎么折腾(二)
上一节,我们介绍了Mat遍历连续空间的方式,当然存数数据的空间也有可能是不连续的,本节就来简单介绍一下不连续空间的遍历方式。再写代码二维数组同样,先来一段代码:int es = mat.elemSize();for (int row = 0; row < mat.rows; row++){ for (int col = 0; col < mat.cols; col++) ...原创 2018-03-30 09:30:53 · 173 阅读 · 0 评论 -
看他怎么“折腾”(四)
来看另外一些比较优雅的访问Mat数据空间的方式,今天为你带来的是at。at同样也是一个模版函数,但与ptr不同的是,at返回的是一个“引用”,即一个别名,而且一般来讲不占用内存空间(具体与编译器先关)。同样呢,当发生错误时,at也可以抛出异常,可以try {} catch {}将其抓获。所以呢,at函数就有了这样一些优点: 是接口最简单的一种遍历方式;其访问数据的效率较高。今天的“栗子”长这样fo...原创 2018-04-08 09:48:01 · 233 阅读 · 0 评论 -
看他怎么”折腾“(三)
两讲介绍了如何遍历Mat的连续数据空间和不连续的数据空间,这两种方式相对都比较直接和粗暴,直接访问data字段。接下来介绍一些相对委婉和优雅的方式,今天来看看ptr模版函数的方式。ptr模版函数是Opencv Mat类提供的一种访问数据的方式,基本使用方式大概如下:mat.ptr<Vec3b>(row)mat.ptr<Vec3b>(row, col)OpenCV的Mat类提...原创 2018-04-02 09:14:51 · 222 阅读 · 0 评论 -
“我们的孩子长出胎心胎芽”
我们这个“孩子”主要基于Opencv去做,所以,首先呢,介绍一下Opencv中最关键也最基础的一个类,Mat类,这也就是一个孩子,一个生命最初始的状态喽。Mat是OpenCV最基本的数据结构, Mat及矩阵(Matrix)的缩写。我们在读取图片的时候就是将图片定义为Mat类型。Mat是一个类,提供了一大堆重载的构造函数,在opencv中mat.hpp文件中有其详细的定义以及提供的构造函数已经相关的...原创 2018-03-28 08:46:48 · 319 阅读 · 0 评论 -
看“他”怎么折腾(一)
“这孩子”,你知道我说的是OpenCV的Mat类,不知道在娘胎里怎么折腾呢,想不想一览究竟呢,接下来就为你细细道来。1OpenCV中Mat类是一个是一个用来存放视图像数据的结构,其中的数据可能是连续存储的,也可能是不连续存储的。Mat类提供了一个接口来判断其存储的数据是否是连续的方法:isContinuous()。如果是连续的返回true,不连续返回false。Mat类的数据放在其一个叫做data...原创 2018-03-29 09:09:16 · 210 阅读 · 0 评论