Можно посмотреть методы инвариантов, кторорые основаны на расчёте (центральных) моментов образа. Этим занимается, например, Jan Flusser, список публикаций найдётся
вот тут. Ничего другого пока не читал.
В публикациях в 1993 г. есть ссылка: "Flusser J., Suk T.: Pattern Recognition by Affine Moment Invariants. Pattern Recognition , 26 (1993), 1, 167-174." - там приведена формула. Она простая, её запрограммировать легко. На Матлабе:
Код:
function [m, Xc, Yc] = cmoment(p, q, B, Xc, Yc)
% Calculation of central moments
%
% p, q - vertical and horizontal powers
% B - binary image matrix
% Xc, Yc - coordinates of the center of mass
% Retrieve image size
[nY, nX] = size(B);
% Coordinates of the center of mass (950183.pdf, 930019.pdf)
if nargin < 5
mm00 = sum(sum(B));
if mm00 == 0; mm00 = 1; end;
Xc = sum(sum((ones(nY, 1) * [1:nX]) .* B)) / mm00;
Yc = sum(sum(([1:nY]' * ones(1, nX)) .* B)) / mm00;
end;
% Calculation of central moments
pX = ones(nY, 1) * (([1:nX] - Xc) .^ p);
pY = (([1:nY] - Yc) .^ q)' * ones(1, nX);
m = sum(sum(pX .* pY .* B));
Про расчёт инвариантов по моментам можно почитать, например, "Flusser J.: On the independence of rotation moment invariants. Pattern Recognition, 33 (2000), 9, 1405-1410." - но это не единственный вариант (зато самый простой), в других статьях есть ещё.
А каков Ваш в этом интерес, если не секрет? Я тут практически только что двольно основательно покувырял эти инварианты - ничего хорошего в них не увидел. Может, у Вас есть что о них сказать с хорошей стороны? Отзывы, примеры использования?..