《OpenCV从入门到放弃》 -- 2th 图像二值化
来源:互联网 发布:龙卷风优化软件 编辑:程序博客网 时间:2024/05/16 15:17
接着上回的来说,今天记录一下图像的二值化。
图像二值化的思路是:
加载图像 -> 转为灰度图 -> 转为二值化图-> 显示出来
加载图像与显示图像上一篇已经有讲了,这里不赘述;
转为灰度图:
g_pGrayImage = cvCreateImage(cvGetSize(src), IPL_DEPTH_8U, 1); //src是读入的图片
cvCvtColor(src, g_pGrayImage, CV_BGR2GRAY);
二值化:
g_pBinaryImage = cvCreateImage(cvGetSize(g_pGrayImage), IPL_DEPTH_8U, 1);
cvThreshold(g_pGrayImage, g_pBinaryImage, 95, 255, CV_THRESH_BINARY); //95代表阈值
下面是完整的代码:
/** * Function: 显示一幅图像 * Author : 靳皓屹 * Date : 2017/02/28 **/#include "cv.h"#include "highgui.h"#include <stdio.h>#include <stdlib.h>int main( int argc, char** argv ){ IplImage* src = cvLoadImage("cat.jpg",CV_LOAD_IMAGE_ANYCOLOR); // 打开图像 IplImage *g_pGrayImage = NULL , *g_pBinaryImage = NULL; g_pGrayImage = cvCreateImage(cvGetSize(src), IPL_DEPTH_8U, 1); cvCvtColor(src, g_pGrayImage, CV_BGR2GRAY); g_pBinaryImage = cvCreateImage(cvGetSize(g_pGrayImage), IPL_DEPTH_8U, 1); cvThreshold(g_pGrayImage, g_pBinaryImage, 95, 255, CV_THRESH_BINARY); cvNamedWindow("src_im",CV_WINDOW_AUTOSIZE); //创建一个窗口 cvShowImage("src_im",src); //在窗口中显示图像 cvNamedWindow("bin_img",CV_WINDOW_AUTOSIZE); //创建一个窗口 cvShowImage("bin_img",g_pBinaryImage); //在窗口中显示图像 cvWaitKey(0);}
0 0
- 《OpenCV从入门到放弃》 -- 2th 图像二值化
- 《Opencv从入门到放弃》-- 1th 显示图像
- OpenCV从入门到放弃(五):像素!
- opencv环境配置 从入门到放弃.....
- OpenCV从入门到放弃(二):架构和上手
- OpenCV从入门到放弃(三):Core组件细讲
- OpenCV从入门到放弃(四):HighGui组件细讲
- OpenCV从入门到放弃(七):直方图那些事儿
- OpenCV从入门到放弃:摸鱼笔记(一)
- opencv从入门到精通(2)--简单图像变换
- android从入门到放弃2--ButterKnife
- Freemarker 从入门到放弃
- kmp从入门到放弃
- Dagger2从入门到放弃
- 推送 从入门到放弃
- 推送 从入门到放弃
- Python从入门到放弃
- vim从入门到放弃
- Java基础:集合框架工具类
- C提高(2)/指针
- 打印和为N的连续正整数序列
- verilog学习笔记——串口
- CSS em rem vh vw calc() line-height 百分比
- 《OpenCV从入门到放弃》 -- 2th 图像二值化
- 系统吞吐量、TPS(QPS)、用户并发量、性能测试概念和公式
- 旅游规划(最短路,两重判断最优)
- 在Visual Studio中构建Node.js项目
- Java匿名内部类
- CentOS7 关闭防火墙
- Codeforces 682D Alyona and Strings【dp】
- 常见的七种Hadoop和Spark项目案例
- Android系统APP访问硬件之JNI方式0002