工作生活

图像熵时间的改进

2019-07-02  本文已影响0人  Elijah_cs

目前是对一个CU求二维熵以判断是否进行划分,二维熵这么定义的,假设在某个点,其位置为[m][n],他的像素值为i,则对其求周围的像素均值j,然后count[i][j]++,计数器增加一,最后求到每个count的概率p,并求plogp的和的负数即为二维熵,但是便利256*256的数组的时间代价太大(i,j的像素值在0~256),尝试用其他方式来索引count[i][j]。
首先尝试map<vector<int>, int> Arr,map数据结构

#include<iostream>
#include<string>
#include<vector>
#include<map>
using namespace std;
int main()
{
    map<vector<int>, int> Arr;
    map<vector<int>, int>::iterator iter;
    vector<int> a, b, c;
    int i,j;
    a.push_back(1);
    b.push_back(2);
    c.push_back(3);
    mm.insert(map<vector<int>, vector<int>>::value_type(a, b));
    for(iter = Arr.begin();iter!=Arr.end)
    {
          cout<<iter->first<<endl; //有问题
    }

    return 0;
}
上一篇 下一篇

猜你喜欢

热点阅读