#include "opencv2/highgui/highgui.hpp" #include "opencv2/imgproc/imgproc.hpp" #include "opencv2/core/core.hpp" #include <opencv\ml.h> #include <iostream> #include "cv.h" #include "highgui.h" #include <vector> #include <math.h> #include <string.h> #include <fstream> using namespace std; using namespace cv; //统计一幅图片中白色像素点和黑色像素点占整幅图的比例 int bSums(Mat src) { int counter = 0; int black = 0; int n = 0; //迭代器访问像素点 Mat_<uchar>::iterator it = src.begin<uchar>(); Mat_<uchar>::iterator itend = src.end<uchar>(); for (; it != itend; ++it) { n++; if ((*it) > 0) { counter += 1;//二值化后,像素点是0或者255 } else { black += 1; } } double biliB = counter*1.0/n*1.0*100*1.0; double biliH = black*1.0/n*1.0*100*1.0; cout << "counter:" << counter << endl; cout << "black:" << black << endl; cout << "n:" << n << endl; cout << "biliB:" << biliB << endl; cout << "biliH:" << biliH << endl; return counter; } int main(int agrc,char** agrv) { Mat imgPath = imread("D://XR//811416.jpg");//读取源图 //namedWindow("原图", 0); //resizeWindow("原图", 500, 500); imshow("原图", imgPath); Mat a1; cvtColor(imgPath, a1, COLOR_BGR2GRAY);//转灰度图 //namedWindow("灰度", 0); //resizeWindow("灰度", 500, 500); imshow("灰度", a1); Mat a2; threshold(a1, a2, 0, 255, THRESH_BINARY | THRESH_OTSU);//二值化 //namedWindow("灰度", 0); //resizeWindow("灰度", 500, 500); imshow("灰度", a2); int a = bSums(a2);//调用函数bSums imshow("A", a2); //cout << "A:" << a; waitKey(); return 0; }
相关推荐
在图像处理领域,获取图片每个像素点的RGB值是一项基础且重要的操作。RGB(Red, Green, Blue)是颜色模型的一种,它通过红、绿、蓝三种颜色的不同强度组合来表示各种颜色。以下是一个关于如何获取图片每个像素点RGB...
- **确定标红条件**:题目中提到将灰度值占比小于0.01的点标红,因此首先需要根据灰度值统计结果找到满足条件的像素坐标。 ```matlab threshold = 0.01; % 阈值设置 lowPercentIndices = find(percentages ); % ...
在Python编程语言中,处理图像是一项常见的任务,其中包括图片的切割和获取像素点。这个名为“pngtools.zip”的压缩包可能包含一个或多个Python脚本,用于实现这些功能。让我们详细了解一下如何使用Python来实现图片...
在Qt框架中,实现一个能够加载图片并在界面上显示,同时获取鼠标在图片上移动时所对应的像素点坐标的功能,需要对Qt的图形系统有深入理解。以下将详细阐述这个过程涉及的关键知识点。 首先,Qt中的`QImage`类是处理...
在C#编程中,获取图片中某个像素点的RGB565值是一项常见的图像处理任务。RGB565是一种16位颜色格式,用于存储颜色数据,其中R(红色)占5位,G(绿色)占6位,B(蓝色)占5位,这种格式在嵌入式系统和低内存应用中...
本文将详细介绍如何使用Python和OpenCV进行二值化操作,并计算图像中的白色像素点数量。 首先,我们需要导入必要的库,如`cv2`用于OpenCV操作,`numpy`用于数值计算,以及`PIL`(Python Imaging Library)用于图像...
1.通过JS技术把获取已知图片的像素值 2.获取到像素值去除A通道干扰 3.把最终的像素值一维数组转换HTML文件格式并导出到文件 4.懂JS获取文件内容的技术人员可以通过JS获取导出的文件内容,赋值给HTML标签,这样图片就...
很好的提取指定图像中指定颜色的像素点坐标的c++代码
根据给定文件的信息,本文将围绕“提取图像中特定像素点”的主题展开,重点解析如何在C语言环境下读取并提取位图文件(BMP)中的特定像素点颜色信息。 ### 一、图像处理背景 在图像处理领域,特征值提取是一项基本...
在二值化过程中,当像素点的灰度值等于255时,会被设定为白色;反之,如果灰度值为0,则会被设定为黑色。这种转换使得图像的边界和特征更加清晰,对于文字识别、噪声消除、边缘检测等应用场景非常有用。 标签“设置...
总结来说,从彩色图片中提取像素点并运用色度学原理计算温度,需要掌握MATLAB的基本图像处理函数,理解色度学概念,以及可能的温度模型。通过编写脚本,我们可以实现从读取图像、遍历像素、颜色空间转换到温度计算的...
在计算机视觉领域,获取图像中任意像素点的色彩信息是一项基本操作。OpenCV是一个强大的开源计算机视觉库,它提供了丰富的函数来处理图像和视频数据。本程序利用OpenCV实现了通过鼠标点击获取图像上像素点的RGB值和...
"获取图片像素工具"是一款专为图像处理爱好者和专业设计师设计的应用程序,它允许用户轻松地查看和提取图像中的每一个像素的颜色信息。在数字图像处理领域,了解和精确控制像素颜色是至关重要的,无论是进行图像编辑...
标题提到的"对光线比例图像进行白色着色的百分比"是指在灰度图像中计算白色像素所占的比例,这是一个典型的图像分析问题。在这个场景下,"光线比例图像"通常指的是灰度图像,因为灰度图像的每个像素值代表了光的强度...
- **蓝色像素统计**:在本案例中,主要关注于统计蓝色像素点的数量,以此作为车牌区域的筛选条件之一。具体而言,通过对蓝色像素点数量的统计,可以初步确定可能包含车牌的区域。 2. **车牌区域定位优化:** - *...
- 统计满足条件的像素数量(`num`),然后除以总像素数(`image.rows * image.cols`)得到黑色像素的比例,存储在`rate`变量中。 - 如果这个比例大于设定的阈值(在这个例子中是0.20),则认为图像中有大量黑色,...
"C#图片颜色比例分布"这个主题涉及到如何使用C#编程语言来提取并统计图像中各种颜色的比例。下面我们将深入探讨这个话题。 首先,我们需要理解颜色模型。在RGB(Red, Green, Blue)模型中,每种颜色由红色、绿色和...
当我们需要获取Canvas中某个特定像素点的颜色时,可以使用`getImageData()`方法。这个方法允许我们获取Canvas渲染上下文中的像素数据,并将其转化为一个`ImageData`对象,其中包含了每个像素的RGB(红绿蓝)和透明度...
通过研究和解析这些文件,我们可以学习到如何将像素点特效应用于实际的网页设计中。 总的来说,像素点网页特效结合了前端开发的多种技术,通过巧妙运用CSS3、JavaScript和HTML5,设计师可以创造出令人印象深刻的...