首页
壁纸
直播
留言板
视频
统计
友情链接
实用工具
Search
1
adb install -r -l -t -s -d -g 的解释
39,565 阅读
2
C#,Aforge调用摄像头,实时处理图像,灰度化/二值化
121 阅读
3
Windows SDK version 8.1 下载地址
118 阅读
4
handsome常用操作
107 阅读
5
WPF GMap.Net开发
103 阅读
默认分类
C#
MySQL
LabVIEW
Java
Android
PHP
Python
handsome
相册
百度地图
登录
/
注册
Search
标签搜索
handsome
C#
Git
Y
累计撰写
38
篇文章
累计收到
7
条评论
首页
栏目
默认分类
C#
MySQL
LabVIEW
Java
Android
PHP
Python
handsome
相册
百度地图
页面
壁纸
直播
留言板
视频
统计
友情链接
实用工具
搜索到
1
篇与
的结果
2018-05-20
C#,Aforge调用摄像头,实时处理图像,灰度化/二值化
https://img-blog.csdn.net/20180520180903818?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd5dTIzMw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70//声明全局函数private FilterInfoCollection videoDevices; private VideoCaptureDevice videoSource; private static int jj; //Aforge调用摄像头private void Form1_Load(object sender, EventArgs e) { videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice); if (videoDevices.Count == 0) { throw new ApplicationException(); } foreach(FilterInfo device in videoDevices) { comboBox1.Items.Add(device.Name); } comboBox1.SelectedIndex = 0; } //链接摄像头private void button1_Click(object sender, EventArgs e) { CameraConn(); } private void CameraConn() { VideoCaptureDevice videoSource = new VideoCaptureDevice(videoDevices[comboBox1.SelectedIndex].MonikerString); videoSourcePlayer1.VideoSource = videoSource; videoSourcePlayer1.Start(); } //捕获摄像头当前画面,生成灰度化图片private void button2_Click_1(object sender, EventArgs e) { pictureBox1.Image= videoSourcePlayer1.GetCurrentVideoFrame(); } //捕获摄像头当前画面,生成成二值化图片private void button2_Click(object sender, EventArgs e) { Bitmap b = videoSourcePlayer1.GetCurrentVideoFrame(); pictureBox1.Image = ConvertTo1Bpp1(b); } --------------------------------------------------------灰度化,二值化函数操作方法-------------------------------------------// 图像灰度化操作函数public static Bitmap ToGray(Bitmap bmp){ for (int i = 0; i < bmp.Width; i++) { for (int j = 0; j < bmp.Height; j++) { //获取该点的像素的RGB的颜色 Color color = bmp.GetPixel(i, j); //利用公式计算灰度值 int gray = (int)(color.R * 0.3 + color.G * 0.59 + color.B * 0.11); Color newColor = Color.FromArgb(gray, gray, gray); bmp.SetPixel(i, j, newColor); } } return bmp; } // 图像二值化1:取图片的平均灰度作为阈值,低于该值的全都为0,高于该值的全都为255public static Bitmap ConvertTo1Bpp1(Bitmap bmp){ int average = 0; average = 122; jj = average; //将阈值传递出来 for (int i = 0; i < bmp.Width; i++) { for (int j = 0; j < bmp.Height; j++) { //获取该点的像素的RGB的颜色 Color color = bmp.GetPixel(i, j); int value = 255 - color.B; Color newColor = value > average ? Color.FromArgb(0, 0, 0) : Color.FromArgb(255, 255, 255); bmp.SetPixel(i, j, newColor); } } return bmp; } //用到的指令集using AForge.Video.DirectShow; using System; using System.Drawing; using System.IO; using System.Windows.Forms;
2018年05月20日
121 阅读
1 评论
0 点赞