пʼятниця, 4 квітня 2008 р.

План на этот год

модель изображения. - апрель

Поиск выпуклой оболочки – процесс построения в зависимости от шума объекта - 2 половина апреля

Степень круглости изображения. - май

Определение скорости движения частиц. - май

Разделение соприкасающихся объектов. - май

Определение формы изображения (движение максимальной вписанной окружностью) - июнь

Попытка увеличить точность получения центра тяжести на основе гистограм и яркости. - июнь


Все это надо просто дооформить. Куча обрывков статей, без обзора литературы.

А вот план на осень
  1. Введение:

    1. геометрические алгоритмы (формы)

    2. анализ (выпуклые области и связанные с ними задачи) /отдельно стоящие точки от областей/

  2. Поиск методов, алгоритмических решений: численные методы, статистические, структурные, лингвистические

  3. Постановка задачи и обоснование алгоритмов.

  4. Эксперименты. Графики , таблицы

Наверное, завтра напишу, что я нарыл по моделям изображений.

понеділок, 24 березня 2008 р.

Про RAW

Последние несколько недель занимался вскрытием RAWa на своём бедном Canon S3IS. В принципе ничего сложного там нет. Сложное там, только если потом заниматься графическими штучками.
А так все просто, только просто до страшного. Не знал, что получаемое изображение для моего фотоаппарата настолько страшное. Это ж какой алгоритм внутри, это ж какой процессор мощный. Но только куча чёрных пикселей.
Есть у меня несколько идей для дальнейшей работы - которая должна победить цветовое несоответствие.

Про сам RAW с фотоаппарата, или точнее то, что сохраняется на моем.
Сохраняются значения откликов.
Сохраняются они по хитрому:
1. сохраняются в двухбайтовых словах(word или ushort). А слова в хитром порядке. В 10 байтах (5 word) - 8 точек.
[L00H11 1111] [H0000 0000]
[L2222 22H33] [L1111 H2222]
[H4444 4444] [L3333 3333]
[L5555 H6666] [L44H55 5555]
[L7777 7777] [L6666 66H77]
2. Кроме всего прочего есть области за границей jpeg - их надо вырезать если совмещать с реальным изо.
3. Не существуют цветных полностью датчиков. существуют датчики для отдельных цветов (хммм... наверное ж они зависят) и получается изображение хранится по строкам
R G | R G ... R G
G B | R G ... R G

Кусочки кода:
к 1 пункту
pixels[0] = (short)((file[i + 1]<<2)>> 6));
pixels[1] = (short)(((file[i]&63)<<>> 4));
pixels[2] = (short)(((file[i + 3]&15) <<>> 2));
pixels[3] = (short)(((file[i + 2] & 3) << 8) + (file[i + 5]));
pixels[4] = (short)((file[i + 7] >> 6) + (file[i + 4] <<2));
pixels[5] = (short)(((file[i + 7] & 63) <<4)>> 4));
pixels[6] = (short)(((file[i + 6]&15) <<>> 2));
pixels[7] = (short)((file[i + 8]) + ((file[i + 9] &3) << 8));
и
к второму пункту
result[2, i, j] = (short)(rawFile[x]);
result[1, i, j] = (short)((rawFile[x + 1] + rawFile[x + bigWidth]) / 2);
result[0, i, j] = (short)(rawFile[x + bigWidth + 1]);

все данные взяты отсюда