az integrált kép az, ahol minden pixel a megfelelő bemeneti képpont összesített összegét képviseli, a bemeneti képpont felett és bal oldalán lévő összes képponttal. Lehetővé teszi az összegzések gyors kiszámítását a kép alrégiók felett. Az ilyen alrégió bármely téglalap alakú részhalmaza állandó időben értékelhető.
ezt a koncepciót Viola & Jones vezette be, és Summed Area Table néven is ismert. lehetővé teszi a téglalap alakú képfunkciók gyors kiszámítását, mivel lehetővé teszik a képértékek összegzését bármely téglalap alakú képrégió felett állandó időben, azaz. az O (1) számítási komplexitása O (n) helyett.
az integrált kép meghatározása:
a SAT módszer
- tér komplexitás: O (M * N)
- idő komplexitás tartomány összeg lekérdezés: O (1)
- idő komplexitás frissíteni egy értéket mátrix: O (M*N)
- hatékonyan kiszámítja a statisztikákat, mint az átlag, a szórás stb. bármely téglalap alakú ablakban
integrált Képszámítás
gyors területszámítás
Sum = jobb alsó + bal felső — jobb felső — bal alsó
- régió alapú statisztikai intézkedések pl. területösszegek, kovariancia, együttes előfordulási mátrix
- textúra leképezés
- feature — haar észlelése
- adaptív küszöb
- sztereó megfeleltetés
- az integrált képek fogalma könnyen kiterjeszthető folyamatos tartományra (korlátok használatával) és többdimenziós képekre.
- O (1) kétoldalú állandó térbeli szűrők
Kód
class NumMatrix {
public:
vector<vector<int>> sat;
bool empty=true;
NumMatrix(vector<vector<int>> &img) {
int row = img.size();
if(row == 0) return;
int col = img.size();
if(col == 0) return;
empty = false;
sat = vector<vector<int>>(row + 1, vector<int>(col + 1));
for(int i = 1; i <= row; i++)
for(int j = 1; j <= col; j++)
sat = sat + sat - sat + img;
}
int sumRegion(int row1, int col1, int row2, int col2) {
return empty? 0 : sat - (sat + sat - sat);
}
};