Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

работа с изображениями - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ копирование http://www.cyberforum.ru/cpp-beginners/thread985795.html
Есть небольшая проблема в задании и хотел бы узнать, как сделать такой кусок. Допустим задаем 2 слова(или предложения не важно) и нужно 1 копернуть на N место другого(например str1 копернуть в str)....
C++ Массив заполнен случайными числами. Отсортировать разности (1-2,3-4,..,19-20) по возрастанию Массив заполнен с помощью генератора случайных чисел. Отсортировать разности (1-2,3-4,..,19-20) по возрастанию. Народ буду очень благодарен если поможете. Перевёлся на другую специальность и там во... http://www.cyberforum.ru/cpp-beginners/thread985778.html
C++ Анализ частотной характеристики электронной схемы (C++)
Приветствую форумчане!Нужна помощь,если надо-отблагодарю,как смогу,вообщем,надо решить следующее задание: Разработать программу на любом языке программирования для расчета по ЭВМ частотной...
C++ конец файла C++
Имеется файл с данными типа forestry и функция которая выводит на экран его содержимое void output_all (void) { forestry temp; FILE *f; if((f = fopen ("forestry.txt", "rb")) == NULL)...
C++ Записать в виде воспринемаемом С++ http://www.cyberforum.ru/cpp-beginners/thread985741.html
Задали лабу нащёл пример решения осталось только подставить свои значения. Помогите записать формулы в виде воспринемаемом С++. П.С. я не учусь на програмиста и это последняя лаба после которой...
C++ Как заставить sscanf работать с динамическими массивами? Как заставить sscanf работать с динамическими массивами или есть этому альтернатива(кроме strtok)? подробнее

Показать сообщение отдельно
yura91
1 / 25 / 2
Регистрация: 23.10.2013
Сообщений: 2,305
23.10.2013, 18:57  [ТС]
вот выложил теперь можете помочь его понять обьсните как он работает?сдесь 2 функции

Добавлено через 6 минут
void CPlateDet::CreateIntegralImage(PBYTE pic, int W, int H, double *pdpic, double *pdpic2)
{
double *pd,s,*pd2,s2;
PBYTE pp;

int i,j;

pp=pic; pd=pdpic; pd2=pdpic2;
for (j=0;j<H;j++)
{
s=0; s2=0;
for (i=0;i<W;i++)
{
s+=(*pp); s2+=(*pp)*(*pp); pp++;
(*pd++)=s;
(*pd2++)=s2;
}
}
for (j=0;j<W;j++)
{
s=0; pd=pdpic+j;
s2=0; pd2=pdpic2+j;
for (i=0;i<H;i++)
{
s+=(*pd); (*pd)=s; pd+=W;
s2+=(*pd2); (*pd2)=s2; pd2+=W;
}
}
}

int CPlateDet::ScanFixScale(int W, int H, double *intpic, double *intpic2, int fw,int stepC)
{
int i,j,k,f_ind,fh=fw*initH/initW;
double *pd;
double s1,M,D;
int x=-1,y=-W,x1=fw-1,y1=W*(fh-1),fN=fw*fh;
//пространственный шаг по изображению, одинаковый по горизонтали и вертикали
int step,step_X,step_Y;

if (stepC==0)
{
step=int(1.0*fw/10+0.5);
step_X=MAX(int(1.0*fw/20+0.5),2);
step_Y=MAX(int(1.0*fh/20+0.5),2);
}
else
step=stepC;

//настройка классификаторов на размер искомого объекта и всего изображения
for (k=0;k<rcNum;k++)
pRecEtap[k].SetNewSize(fw,W);

//каскадный поиск лиц (или других объектов), f_ind - число найденных объектов
f_ind=0;
for (j=1;j<H-fh;j+=step_Y)
for (i=1;i<W-fw;i+=step_X)
{
pd=intpic2+i+(j)*W;
D=*(pd+x+y)+*(pd+x1+y1)-*(pd+x+y1)-*(pd+x1+y);
pd=intpic+i+(j)*W;
M=*(pd+x+y)+*(pd+x1+y1)-*(pd+x+y1)-*(pd+x1+y);
D=D/fN; M=M/fN; D=D-M*M;
if (D<contrast_por*M*M) continue;

for (k=0;k<rcNum;k++)
{
s1=pRecEtap[k].GetRef(pd,0);
if (s1<=0)
{
break;
}
}
if (s1>0)
{
obj_atr[f_ind].rPos.left=i;
obj_atr[f_ind].rPos.top=j;
obj_atr[f_ind].rPos.right=i+fw-1;
obj_atr[f_ind].rPos.bottom=j+fw*initH/initW-1;
if (f_ind<(max_plate_num-1)) f_ind++;
}
}
return f_ind;
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru