C语言实现直方图统计和直方图均衡化
来源:互联网 发布:java yield join 编辑:程序博客网 时间:2024/06/10 00:02
C语言实现直方图统计
#include <stdio.h>void DrawHistogram(int nArray[], int nCount, char ch) { for (int i = 0; i < nCount; i++) { for (int j = 0; j < nArray[i]; j++) printf("%c", ch); printf(" %d\n", nArray[i]); } printf("\n");}void CountRangeItems(int dArray[], int nDataItems, int nArray[]) { for (int i = 0; i < nDataItems; i++) { if (dArray[i] <= 160) nArray[0]++; else if (dArray[i] < 165) nArray[1]++; else if (dArray[i] < 170) nArray[2]++; else if (dArray[i] < 175) nArray[3]++; else if (dArray[i] > 175) nArray[4]++; }}int main() { int height[] = { 185, 176, 165, 169, 160, 152, 173, 196, 178, 169, 166, 182, 181, 171, 159, 163, 168 }; int nArray[5] = { 0 }; int nCount = 5, size = sizeof(height) / sizeof(height[0]); CountRangeItems(height, size, nArray); DrawHistogram(nArray, nCount, '*'); getchar(); return 0;}
C语言实现直方图均衡化
#include <stdio.h>void DrawHistogram(int nArray[], int nCount, char ch) { for (int i = 0; i < nCount; i++) { for (int j = 0; j < nArray[i]; j++) printf("%c", ch); printf(" %d\n", nArray[i]); } printf("\n");}void CountRangeItems(int dArray[], int nDataItems, int nArray[]) { for (int i = 0; i < nDataItems; i++) { if (dArray[i] <= 160) nArray[0]++; else if (dArray[i] < 165) nArray[1]++; else if (dArray[i] < 170) nArray[2]++; else if (dArray[i] < 175) nArray[3]++; else if (dArray[i] > 175) nArray[4]++; }}int main() { int height[] = { 158, 176, 165, 159, 160, 182, 173, 159, 178, 169, 166, 182, 179, 171, 159, 166, 157, 176, 171, 159 }; int nArray[5] = { 0 }; int nCount = 5, size = sizeof(height) / sizeof(height[0]); CountRangeItems(height, size, nArray); DrawHistogram(nArray, nCount, '*'); printf("\n"); //直方图归一化 float histPDF[] = { 0 }; printf("直方图归一化:\n"); for (int i = 0; i < nCount; i++) { histPDF[i] = float(nArray[i])/20.0; //printf(" (%d) ", nArray[i]); printf("%.2f ", histPDF[i]); } //累积直方图 printf("\n累积直方图:\n"); float histCDF[] = { 0 }; for (int i = 0; i < nCount; i++) { if (0 == i) histCDF[i] = histPDF[i]; else histCDF[i] = histCDF[i - 1] + histPDF[i]; printf("%.2f ",histCDF[i]); } //直方图均衡化,映射 printf("\n直方图均衡化:\n"); int histEQU[] = {0}; for (int i = 0; i < nCount; i++) { histEQU[i] = (int)(5.0 * histCDF[i] + 0.5); printf("%d ",histEQU[i]); } getchar(); return 0;}
阅读全文
0 0
- C语言实现直方图统计和直方图均衡化
- c语言实现直方图均衡化
- C语言实现直方图均衡化
- 直方图均衡化原理和编码实现(C/C++)
- 直方图均衡化原理和编码实现(C/C++)
- 直方图均衡化原理和编码实现(C/C++)
- 直方图均衡化实现
- 直方图均衡以、直方图规定化、局部直方图均衡、直方图统计
- 图像直方图均衡和直方图规定化
- 直方图均衡化和直方图匹配
- 直方图均衡化和直方图匹配
- 直方图均衡化程序实现
- 直方图均衡化C++实现
- 用C++(OpenCV)自己实现彩色直方图均衡化
- 【OpenCV】直方图应用:直方图均衡化,直方图匹配,对比直方图
- 直方图应用:直方图均衡化,直方图匹配,对比直方图
- 【OpenCV】直方图应用:直方图均衡化,直方图匹配,对比直方图
- 【OpenCV】直方图应用:直方图均衡化,直方图匹配,对比直方图
- MySQL多表查询
- Mybatis单个参数的if判断(针对异常:There is no getter for property..)
- 马里奥吃金币消失
- Unity Profiler 性能分析
- Kafka Java 牛刀小试
- C语言实现直方图统计和直方图均衡化
- android studio 3.0 升级问题,遇到的坑;
- 文章标题
- 2018,中国区块链将引爆硅谷
- Maven项目,无法显示src/main/java资源文件夹
- android MediaPlayer简单使用
- springboot配置kafka与原生kafka配置
- plsql中文乱码,显示问号
- Listary的软件设置,和习惯优化【方案】