编辑
2018-09-24
服务端技术
00

哈希切割、Top K问题

问题一:给一个超过100G大小的log file, log中存着IP地址, 设计算法找到出现次数最多的IP地址? 问题二:与上题目条件相同,如何找出Top K的IP? 问题三:直接用Linux命令如何实现?

编辑
2018-09-01
数学与线性代数基础
00

关于卷积

卷积是分析数学中一种重要的运算。卷积是一种线性运算,图像处理中常见的mask运算都是卷积,广泛应用于图像滤波。高斯变换就是用高斯函数对图像进行卷积,卷积操作是图像变换的基础。

编辑
2018-08-31
客户端技术
00

Mat对象与IplImage对象

  • Mat对象OpenCV2.0之后引进的图像数据结构、自动分配内存、不存在内存泄漏的问题,是面向对象的数据结构。分了两个部分,头部与数据部分
  • IplImage是从2001年OpenCV发布之后就一直存在,是C语言风格的数据结构,需要开发者自己分配与管理内存,对大的程序使用它容易导致内存泄漏问题,下面是IplImage结构体的定义:
编辑
2018-08-30
客户端技术
00

读写像素

读一个GRAY像素点的像素值(CV_8UC1)

cpp
//方式一 Scalar intensity = img.at<uchar>(y, x); //方式二 Scalar intensity = img.at<uchar>(Point(x, y));

读一个BGR像素点的像素值

cpp
//读取整形 Vec3b intensity = src.at<Vec3b>(x, y); int b = intensity [0]; int g = intensity [1]; int r = intensity [2]; //读取浮点型 Vec3f intensity = img.at<Vec3f>(y, x); float blue = intensity.val[0]; float green = intensity.val[1]; float red = intensity.val[2];

Vec3b与Vec3F

  • Vec3b对应三通道的顺序是blue、green、red的uchar类型数据。
  • Vec3f对应三通道的float类型数据
  • 把CV_8UC1转换到CV32F1实现如下:src.convertTo(dst, CV_32F);
编辑
2018-08-28
客户端技术
00

OpenCV是计算机视觉开源库,主要算法涉及图像处理和机器学习相关方法。是Intel公司贡献出来的,俄罗斯工程师贡献大部分C/C++代码。官网:https://opencv.org/ 从这里 https://opencv.org/releases.html 你可以下载到自己想要的版本!