旅游网站开发文档,如何在阿里云部署网站,网站被k是怎么回事,友情链接检索数据分析操作系统#xff1a;ubuntu22.04 OpenCV版本#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言#xff1a;C11
算法描述
该函数用于在 GPU 上计算输入图像的直方图#xff08;histogram#xff09;。它将像素值区间均匀划分为若干个 bin#xff08;桶#xff09;… 操作系统ubuntu22.04 OpenCV版本OpenCV4.9 IDE:Visual Studio Code 编程语言C11
算法描述
该函数用于在 GPU 上计算输入图像的直方图histogram。它将像素值区间均匀划分为若干个 bin桶并统计每个 bin 中像素的数量。
适用于 单通道图像如灰度图或某个颜色通道。使用等间距的分箱方式即“均匀直方图”。支持 8U 和 32S 类型的图像。
函数原型
void cv::cuda::histEven
(InputArray src,OutputArray hist,int histSize,int lowerLevel,int upperLevel,Stream stream Stream::Null()
) 参数 src源图像。支持 CV_8U、CV_16U 或 CV_16S 类型的图像并且通道数可以是 1 或 4。如果是 4 通道图像则每个通道会分别进行处理。 hist目标直方图是一个具有 1 行、histSize 列、数据类型为 CV_32S 的数组。 histSize直方图的大小即 bin 的数量。 lowerLevel最低级 bin 的下界值包含此值。 upperLevel最高级 bin 的上界值不包含此值。 stream用于异步操作的 CUDA 流对象。
代码示例
#include opencv2/cudaimgproc.hpp
#include opencv2/opencv.hppint main()
{// 读取图像cv::Mat h_src cv::imread( /media/dingxin/data/study/OpenCV/sources/images/Lenna.png, cv::IMREAD_GRAYSCALE );if ( h_src.empty() ){std::cerr 无法加载图像 std::endl;return -1;}// 上传到 GPUcv::cuda::GpuMat d_src, d_hist;d_src.upload( h_src );// 设置直方图参数int histSize 256; // 8-bit 图像有 256 个灰度级int lowerLevel 0;int upperLevel 256;// 创建输出直方图 Matd_hist.create( 1, histSize, CV_32SC1 );// 计算直方图cv::cuda::histEven( d_src, d_hist, histSize, lowerLevel, upperLevel );// 下载结果cv::Mat h_hist;d_hist.download( h_hist );// 打印直方图内容可选for ( int i 0; i histSize; i ){std::cout Bin[ i ] h_hist.at int ( i ) std::endl;}return 0;
}运行结果
Bin[0] 0
Bin[1] 0
Bin[2] 0
Bin[3] 0
Bin[4] 0
Bin[5] 0
Bin[6] 0
Bin[7] 0
Bin[8] 0
Bin[9] 0
Bin[10] 0
Bin[11] 0
Bin[12] 0
Bin[13] 0
Bin[14] 0
Bin[15] 0
Bin[16] 0
Bin[17] 0
Bin[18] 0
Bin[19] 0
Bin[20] 0
Bin[21] 0
Bin[22] 0
Bin[23] 0
Bin[24] 0
Bin[25] 0
Bin[26] 0
Bin[27] 0
Bin[28] 0
Bin[29] 0
Bin[30] 0
Bin[31] 0
Bin[32] 0
Bin[33] 0
Bin[34] 0
Bin[35] 0
Bin[36] 0
Bin[37] 0
Bin[38] 0
Bin[39] 45
Bin[40] 0
Bin[41] 0
Bin[42] 0
Bin[43] 388
Bin[44] 0
Bin[45] 0
Bin[46] 1171
Bin[47] 0
Bin[48] 0
Bin[49] 0
Bin[50] 2211
Bin[51] 0
Bin[52] 0
Bin[53] 3583
Bin[54] 0
Bin[55] 0
Bin[56] 5472
Bin[57] 0
Bin[58] 0
Bin[59] 6460
Bin[60] 0
Bin[61] 5922
Bin[62] 0
Bin[63] 0
Bin[64] 5104
Bin[65] 0
Bin[66] 4325
Bin[67] 0
Bin[68] 3100
Bin[69] 0
Bin[70] 2479
Bin[71] 0
Bin[72] 2093
Bin[73] 0
Bin[74] 1730
Bin[75] 0
Bin[76] 1566
Bin[77] 0
Bin[78] 1469
Bin[79] 0
Bin[80] 1377
Bin[81] 0
Bin[82] 1345
Bin[83] 0
Bin[84] 1335
Bin[85] 1367
Bin[86] 0
Bin[87] 1416
Bin[88] 0
Bin[89] 1479
Bin[90] 1468
Bin[91] 0
Bin[92] 1465
Bin[93] 1438
Bin[94] 0
Bin[95] 1328
Bin[96] 1431
Bin[97] 0
Bin[98] 1465
Bin[99] 1504
Bin[100] 0
Bin[101] 1522
Bin[102] 1564
Bin[103] 1605
Bin[104] 0
Bin[105] 1674
Bin[106] 1604
Bin[107] 1741
Bin[108] 0
Bin[109] 1774
Bin[110] 2021
Bin[111] 2398
Bin[112] 2598
Bin[113] 0
Bin[114] 2673
Bin[115] 2588
Bin[116] 2403
Bin[117] 2126
Bin[118] 2027
Bin[119] 1730
Bin[120] 1676
Bin[121] 0
Bin[122] 1554
Bin[123] 1522
Bin[124] 1510
Bin[125] 1529
Bin[126] 1579
Bin[127] 1536
Bin[128] 1603
Bin[129] 1542
Bin[130] 1719
Bin[131] 1795
Bin[132] 1851
Bin[133] 1796
Bin[134] 1919
Bin[135] 1916
Bin[136] 2022
Bin[137] 2198
Bin[138] 2409
Bin[139] 2650
Bin[140] 2626
Bin[141] 2629
Bin[142] 2685
Bin[143] 2411
Bin[144] 4435
Bin[145] 1980
Bin[146] 1930
Bin[147] 1925
Bin[148] 1939
Bin[149] 2058
Bin[150] 2237
Bin[151] 4821
Bin[152] 2411
Bin[153] 2506
Bin[154] 2411
Bin[155] 2507
Bin[156] 4627
Bin[157] 2240
Bin[158] 2277
Bin[159] 2346
Bin[160] 4692
Bin[161] 2352
Bin[162] 2221
Bin[163] 2278
Bin[164] 4174
Bin[165] 1798
Bin[166] 1729
Bin[167] 2888
Bin[168] 1316
Bin[169] 1285
Bin[170] 2222
Bin[171] 1066
Bin[172] 1035
Bin[173] 1955
Bin[174] 1012
Bin[175] 1883
Bin[176] 941
Bin[177] 998
Bin[178] 1969
Bin[179] 990
Bin[180] 1979
Bin[181] 971
Bin[182] 1816
Bin[183] 836
Bin[184] 1502
Bin[185] 651
Bin[186] 1097
Bin[187] 538
Bin[188] 1020
Bin[189] 487
Bin[190] 886
Bin[191] 458
Bin[192] 1036
Bin[193] 532
Bin[194] 1093
Bin[195] 1145
Bin[196] 595
Bin[197] 1227
Bin[198] 628
Bin[199] 1176
Bin[200] 1129
Bin[201] 595
Bin[202] 1098
Bin[203] 1009
Bin[204] 527
Bin[205] 999
Bin[206] 1066
Bin[207] 1124
Bin[208] 616
Bin[209] 1249
Bin[210] 1236
Bin[211] 598
Bin[212] 1139
Bin[213] 1145
Bin[214] 947
Bin[215] 835
Bin[216] 319
Bin[217] 567
Bin[218] 452
Bin[219] 411
Bin[220] 364
Bin[221] 296
Bin[222] 142
Bin[223] 225
Bin[224] 213
Bin[225] 133
Bin[226] 94
Bin[227] 59
Bin[228] 56
Bin[229] 41
Bin[230] 28
Bin[231] 14
Bin[232] 10
Bin[233] 6
Bin[234] 8
Bin[235] 0
Bin[236] 1
Bin[237] 0
Bin[238] 1
Bin[239] 0
Bin[240] 0
Bin[241] 0
Bin[242] 2
Bin[243] 0
Bin[244] 0
Bin[245] 2
Bin[246] 0
Bin[247] 0
Bin[248] 0
Bin[249] 0
Bin[250] 0
Bin[251] 0
Bin[252] 0
Bin[253] 0
Bin[254] 0
Bin[255] 0
直方图数据分析 总体观察 图像中很多灰度级没有像素如 Bin[0] 到 Bin[38] 都是 0说明图像中没有非常暗的区域。从 Bin[39] 开始出现非零值说明图像主要集中在 中高亮度区域约40~255之间。中间部分如 Bin[85]、Bin[144]、Bin[160] 等有一些明显高峰说明图像中存在较多的中等亮度或高亮度区域。最后几个 Bin235 及以后又开始减少说明图像中纯白区域不多。