图像处理算法
小蚂蚁_CrkRes
Where there is a will, there is a way
展开
-
关于图像特征提取
特征提取是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。 特征的定义 至今为止特征没有万能和精确的定义。特征的精确定义往往由问题或者应用类型决定。特征是一个数字图像中“有趣”的部分,它是许多计算机图像分析算法的起点转载 2015-09-28 09:09:25 · 2319 阅读 · 0 评论 -
OpenCV截取图像的任意形状区域,规则的图形(圆、椭圆、矩形),不规则鼠标自己选择
OpenCV截取图像的任意形状区域(ROI),规则的图形(圆、椭圆、矩形),不规则鼠标自己选择原创 2015-12-17 09:13:38 · 22461 阅读 · 2 评论 -
OpenCV2:Mat属性type,depth,step
Mat的作用The class Mat represents an n-dimensional dense numerical single-channel or multi-channel array. It can be used to store real or complex-valued vectors and matrices, grayscale or color image转载 2015-12-17 13:55:35 · 13359 阅读 · 1 评论 -
OpenCV: 实现将三幅图像合并在一张图片
*****************/ #include #include int main() { char* filePath ="D:/图片库/Lena.jpg"; IplImage* srcImg = cvLoadImage(filePath); IplImage* greyImg = cvCreateImage(cvGe转载 2016-01-09 11:34:05 · 3225 阅读 · 0 评论 -
opencv split和merge操作
#include #include #include #include using namespace cv; using namespace std; int main() { Mat srcImage=imread("e:/huangshan.jpg"); Mat imageBlue,imageGreen,imageRed;原创 2016-01-11 16:56:44 · 2731 阅读 · 0 评论 -
opencv 基本数据结构
DataType : 将C++数据类型转换为对应的opencv数据类型enum { CV_8U=0, CV_8S=1, CV_16U=2, CV_16S=3, CV_32S=4, CV_32F=5, CV_64F=6 };// allocates a 30x40 floating-point matrix // CV_32FMat A(30, 40, DataTypeflo原创 2016-01-11 15:50:26 · 947 阅读 · 0 评论 -
直方图均衡化
目标:在这篇教程中你将学到:什么是图像的直方图和它的用处是什么?使用OpenCV函数:equalize_hist:equalizeHist理论:什么是图像直方图?它是代表一个图像强度的分布密度。它将每个密度的数值的个数都考虑在内。什么是直方图均衡化?它是一种提高图像对比度的方法,通过延伸强度的范围。为了使它更加清楚,通过上面的图片,你可以看到周围的像素似翻译 2016-01-12 08:35:39 · 1426 阅读 · 0 评论 -
opencv操作像素
Fn 1 :使用 Mat 中对矩阵元素的地址定位的知识 (参考博文:OpenCV中对Mat里面depth,dims,channels,step,data,elemSize和数据地址计算的理解)Code 1 :int main(){ //新建一个uchar类型的单通道矩阵(grayscale image 灰度图) Mat m(400, 400,转载 2016-01-12 10:51:10 · 2614 阅读 · 0 评论 -
C++最小二乘法拟合-(线性拟合和多项式拟合)
在进行曲线拟合时用的最多的是最小二乘法,其中以一元函数(线性)和多元函数(多项式)居多,下面这个类专门用于进行多项式拟合,可以根据用户输入的阶次进行多项式拟合,算法来自于网上,和GSL的拟合算法对比过,没有问题。此类在拟合完后还能计算拟合之后的误差:SSE(剩余平方和),SSR(回归平方和),RMSE(均方根误差),R-square(确定系数)。1.fit类的实现先看看转载 2016-01-15 13:09:29 · 12472 阅读 · 1 评论 -
OpenCV截取图像ROI,任意形状
//1.First create mask image as described above//2.Copy the source image to new Mat dst1 using the mask//3.Invert your mask and copy destination image to a new Mat dst2//4.For final result just a原创 2015-12-16 11:37:39 · 7970 阅读 · 0 评论 -
在OpenCV中利用鼠标绘制矩形和截取图像的矩形区域
程序之一,在OpenCV中利用鼠标绘制矩形#include #include #include #pragma comment( lib, "cv.lib" ) #pragma comment( lib, "cxcore.lib" ) #pragma comment( lib, "highgui.lib" ) IplImage* src = 0; IplImage*转载 2015-12-16 10:47:10 · 3122 阅读 · 1 评论 -
数学之美番外篇:平凡而又神奇的贝叶斯方法
概率论只不过是把常识用数学公式表达了出来。——拉普拉斯记得读本科的时候,最喜欢到城里的计算机书店里面去闲逛,一逛就是好几个小时;有一次,在书店看到一本书,名叫贝叶斯方法。当时数学系的课程还没有学到概率统计。我心想,一个方法能够专门写出一本书来,肯定很牛逼。后来,我发现当初的那个朴素归纳推理成立了——这果然是个牛逼的方法。——题记目录0. 前言 1. 历史转载 2015-09-28 09:31:09 · 4083 阅读 · 0 评论 -
vc中如何绘制直方图
1.//定义直方图数组 double hist[256];2.累计得到hist3.定义IDC_HIST4.响应WM_PAINT消息void CDlgHist::OnPaint(){CPaintDC dc(this); // device context for painting// TODO: 在此处添加消息处理程序代码// 不为绘图消息调用 CDialog原创 2015-09-25 15:47:20 · 1512 阅读 · 0 评论 -
机器视觉LED光源照明技术说明
一、机器视觉光源照明技术的几个要素 1、方向:选择不同的光源,控制和调节照射到物体上的入射光的方向是机器视觉系统设计的最基本的参数。它取决于光源的类型和相对于物体放置的位置。 1)直射光:入射光基本上来自一个方向,射角小,它能投射出物体阴影; 2)散射光:入射光来自多个方向,甚至于所有的方向,它不会投射出明显的阴影。 2、光谱:光是由单一的或多种成份的光谱组成的,例如日光原创 2015-11-04 08:44:34 · 2945 阅读 · 0 评论 -
opencv对xml和yaml文件的读写操作
一.xml和yaml的简单介绍 所谓的xml,就是eXtensible Markup Language, 翻译成中文就是“可扩展标识语言“。首先XML是一种元标记语言,所谓“元标记”就是开发者可以根据自己的需要定义自己的标记,比如开发者可以定义如下标记 ,任何满足xml命名规则的名称都可以标记,这就为不同的应用程序打开了的大门。 第二xml是一种语义/结构化语言。它描述了文档的转载 2015-11-05 14:10:42 · 612 阅读 · 0 评论 -
空间域增强
空间域增强:图像反转,对数变换,幂次变换、分段线性变换(s:现点值,r: 原点值)图像反转: 这个无需多说,就是把黑变白,白变黑,拿八位灰度图像来说 表达式:s=255-r 作用:看清暗色图像中白色和灰色的细节。对数变换: 此变换使原创 2015-10-09 09:31:08 · 688 阅读 · 0 评论 -
Gamma 校正
问题:什么是Gamma曲线矫正?Gamma曲线矫正是什么意思? Gamma曲线是一种特殊的色调曲线,当Gamma值等于1的时候,曲线为与坐标轴成45°的直线,这个时候表示输入和输出密度相同。高于1的Gamma值将会造成输出亮化,低于1的Gamma值将会造成输出暗化。总之,我们的要求是输入和输出比率尽可能地接近于1。在显示器、扫描仪、打印机等输入、输出设备中这是一个相当常见并且比较重转载 2015-10-09 10:17:26 · 991 阅读 · 0 评论 -
opencv提取截获图像,任意区域
截取Rect rect(10, 20, 100, 50);Mat image_roi = image(rect);分割/聚合颜色平面split( );merge( ); 案例一、得到由矩形提取到的图像第一步,把截取图像中需要的区域存入矩阵。CvMat* cvGetSubRect(const CvArr* arr, CvMat*原创 2015-12-15 16:30:32 · 10514 阅读 · 2 评论 -
OPENCV不规则ROI-圆形ROI
OpenCV doesn't provide a function to make non-rectangle ROI, so I use image mask to do the trick. It works like this. say we have two images:img - an RGB image.mask - a black image, with white cir转载 2015-12-11 08:43:35 · 2968 阅读 · 0 评论 -
平面方程拟合计算
其程序代码如下:#include "stdafx.h"#include #include #include #define MAX 10void Inverse(double *matrix1[],double*matrix2[],int n,double d);//矩阵求拟double Determinant(double* matrix[],int n);//方阵,原创 2016-01-15 13:31:58 · 6133 阅读 · 1 评论