}
/* Extract energies in LH, HL and HH bands */
- block->v[3] = fast_sqrt_u16(isqr(t[8]) + isqr(t[9]) + isqr(t[12]) + isqr(t[13]));
- block->v[4] = fast_sqrt_u16(isqr(t[2]) + isqr(t[3]) + isqr(t[6]) + isqr(t[7]));
- block->v[5] = fast_sqrt_u16(isqr(t[10]) + isqr(t[11]) + isqr(t[14]) + isqr(t[15]));
+ block->v[3] = fast_sqrt_u32(isqr(t[8]) + isqr(t[9]) + isqr(t[12]) + isqr(t[13]));
+ block->v[4] = fast_sqrt_u32(isqr(t[2]) + isqr(t[3]) + isqr(t[6]) + isqr(t[7]));
+ block->v[5] = fast_sqrt_u32(isqr(t[10]) + isqr(t[11]) + isqr(t[14]) + isqr(t[15]));
sum[3] += block->v[3] * block->area;
sum[4] += block->v[4] * block->area;
sum[5] += block->v[5] * block->area;
{
uns cell_area = 0;
bzero(cnt, data->regions_count * sizeof(u32));
- struct image_sig_block *b1 = data->blocks + cell_x[i] + cell_y[i] * cols, *b2;
+ struct image_sig_block *b1 = data->blocks + cell_x[i] + cell_y[j] * cols, *b2;
for (uns y = cell_y[j]; y < cell_y[j + 1]; y++, b1 += cols)
{
b2 = b1;
#define IMAGE_SIG_TEXTURED 0x1
-/* Image signature (10 + len * 16 bytes) */
+/* Image signature (11 + len * 16 bytes) */
struct image_signature {
byte len; /* Number of regions */
byte flags; /* IMAGE_SIG_xxx */
static inline uns
image_signature_size(uns len)
{
- return 4 + sizeof(struct image_vector) + len * sizeof(struct image_region);
+ return 5 + sizeof(struct image_vector) + len * sizeof(struct image_region);
}
/* sig-dump.c */