2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1, 2
 
 Re: свертка 3D-массивов на С++
Сообщение03.09.2015, 20:45 
Аватара пользователя
Спасибо большое. Сейчас проверить нет возможности, но завтра обязательно.

 
 
 
 Re: свертка 3D-массивов на С++
Сообщение04.09.2015, 12:30 
Аватара пользователя
amon в сообщении #1050259 писал(а):
Не откладывая и на всякий случай (меня может не быть завтра).

Просто в лоб подключить не получилось: потянуло за собой matrix.h, mex.h, несоответствие типов size_t* и int*, unresolved external symbols: mxIsEmpty, mxIsComplex, mexErrMsgIdAndTxt,
mxIsDouble, mxCreateNumericMatrix_730, mxGetNumberOfDimensions_730, mxCalloc, mxGetData, mxGetDimensions_730, mxIsSingle, mxFree, mxCreateNumericArray_730... В общем, надо разбираться, чего еще не хватает и надо подключить... или написать все-таки самому.

 
 
 
 Re: свертка 3D-массивов на С++
Сообщение04.09.2015, 13:45 
Аватара пользователя
Можно посмотреть в кусок /* Core computation loops */ , и уловив оттуда идею, написать по образу и подобию.
Формат 'same' обрабатывается в районе строчки if (strcmp(shape,'same')) .

 
 
 
 Re: свертка 3D-массивов на С++
Сообщение04.09.2015, 16:16 
Аватара пользователя
photon в сообщении #1050386 писал(а):
потянуло за собой matrix.h, mex.h
Header'ы тоже лежат в матлабе (директория external, если не вру). Могу через некое время скинуть (когда до компьютера с матлабом доберусь), но, IMHO, лучше всю директорию подключить, там вложений много.

 
 
 
 Re: свертка 3D-массивов на С++
Сообщение04.09.2015, 16:34 
Аватара пользователя
matrix.h, mex.h я закинул, но дальше потянулись другие проблемы, которые порешить сходу не удалось.... Пишу сам.

 
 
 
 Re: свертка 3D-массивов на С++
Сообщение04.09.2015, 17:50 
Аватара пользователя
photon в сообщении #1050200 писал(а):
Если я правильно представил и записал, то для массивов $X$ размера $a_1\times a_2\times a_3$ и $Y$ размера $b_1\times b_2\times b_3$ свертка
$Z$ размера $c_1\times c_2\times c_3$ (где $c_i=a_i+b_i-1$) будет такой:...


Вероятно, приведенное ниже этого текста выражение справедливо, но для матлаба, где индексация элементов массива начинается с 1, а для С++ надо корректировать.

 
 
 
 Re: свертка 3D-массивов на С++
Сообщение07.09.2015, 16:34 
Аватара пользователя
написал, получилось по формуле, которую я записал выше, только поменяв индексы с учётом, что элементы считаются с нуля.

$Z(k_1,k_2,k_3) =\sum\limits_{j_1=\max(0,k_1+1-b_1)}^{\min(k_1,a_1-1)}\sum\limits_{j_2}\sum\limits_{j_3}X(j_1,j_2,j_3)Y(k_1-j_1,\ldots)$

 
 
 [ Сообщений: 22 ]  На страницу Пред.  1, 2


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group