N-D свертка
Можно управлять размером выходных данных convn функция. Например, 'same' опция обрезает внешнюю часть свёртки и возвращает только центральную часть, размер которой совпадает с размером входного элемента.
Свернуть случайный массив 2 на 3 на 2 A с ядром 2 на 2 на 2 B. Результатом является массив 3 на 4 на 3, который является size(A) + size(B) - 1.
A = rand(2,3,2); B = 0.25*ones(2,2,2); C = convn(A,B)
C =
C(:,:,1) =
0.2037 0.2354 0.1898 0.1581
0.4301 0.6902 0.4426 0.1825
0.2264 0.4548 0.2527 0.0244
C(:,:,2) =
0.2733 0.5444 0.4686 0.1975
0.6365 1.3772 1.2052 0.4645
0.3632 0.8327 0.7366 0.2670
C(:,:,3) =
0.0696 0.3090 0.2788 0.0394
0.2063 0.6869 0.7627 0.2821
0.1367 0.3779 0.4839 0.2426
sizeC = size(A) + size(B) - 1
sizeC = 1×3
3 4 3
Вернуть центральную часть свёртки, размер которой равен A.
C = convn(A,B,'same')C =
C(:,:,1) =
1.3772 1.2052 0.4645
0.8327 0.7366 0.2670
C(:,:,2) =
0.6869 0.7627 0.2821
0.3779 0.4839 0.2426
A - Входной массивВходной массив, заданный как вектор, матрица или многомерный массив.
Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
Поддержка комплексного номера: Да
B - Второй входной массивВторой входной массив, заданный как вектор, матрица или многомерный массив для свертки с A. Множество B не обязательно должен быть такого же размера, как A.
Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
Поддержка комплексного номера: Да
shape - Подраздел свертки'full' (по умолчанию) | 'same' | 'valid'Подраздел свертки, указанный как одно из следующих значений:
'full' - возврат полной N-D свертки.
'same' - Возврат центральной части свёртки, которая имеет тот же размер, что и A.
'valid' - возвращает только части свёртки, вычисленные без заполненных нулем кромок.
C - N-D сверткаN-D свертка, возвращаемая как вектор, матрица или многомерный массив. Если A и B иметь одинаковое количество размеров, полный сверток C = convn(A,B) имеет размер size(A)+size(B)-1.
Когда один или оба из A и B относятся к типу single, то выход имеет тип single. В противном случае convn преобразует входные данные в тип double и возвращает тип double.
Типы данных: double | single
Для дискретных, N-мерных переменных A и B это уравнение определяет свертку A и B:
,..., jN − kN)
Каждый ki выполняет все значения, которые приводят к легальным индексам A и B.
Примечания и ограничения по использованию:
Если shape является 'full' (по умолчанию), затем входы A и B не должен быть пустым, и только один массив может быть высоким.
Если shape является 'same' или 'valid', то B не может быть массивом высокого уровня.
Дополнительные сведения см. в разделе Массивы Tall.
Эта функция полностью поддерживает массивы графических процессоров. Дополнительные сведения см. в разделе Запуск функций MATLAB на графическом процессоре (панель инструментов параллельных вычислений).
Эта функция полностью поддерживает распределенные массивы. Дополнительные сведения см. в разделе Запуск функций MATLAB с распределенными массивами (панель инструментов параллельных вычислений).
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.