31、matlab卷积运算:卷积运算、二维卷积、N维卷积

1、conv 卷积和多项式乘法

语法

语法1:w = conv(u,v) 返回向量 u 和 v 的卷积。
语法2:w = conv(u,v,shape) 返回如 shape 指定的卷积的分段。


参数

u,v — 输入向量  shape — 卷积的分段  'full' (默认) | 'same' | 'valid'

'full':全卷积 ‘same’:与u大小相同的卷积的中心部分'valid':计算没有补零边缘的卷积部分 

2、通过卷积计算多项式乘法

代码及运算

u = [1 0 1 1];
v = [2 7 1];
w = conv(u,v)w =2     7     3     9     8     1

3、 向量卷积

代码及运算

u = [1 1 1 1];
v = [1 1 1 1 0 0 0 1 1];
w = conv(u,v)w =列 1 至 111     2     3     4     3     2     1     1     2     2     2列 121

4、 卷积的中心部分

'same'代码及运算

u = [-1 2 1 3 1 -2 0 1 2];
v = [2 4 -1 1 1];
w = conv(u,v,'same')w =11     7    14     0    -5     8     7     5    -1

 'full'代码及运算

u = [-1 2 1 3 1 -2 0 1 2];
v = [2 4 -1 1 1];
w = conv(u,v,'full')w =列 1 至 11-2     0    11     7    14     0    -5     8     7     5    -1列 12 至 133     2

 'valid'代码及运算

u = [-1 2 1 3 1 -2 0 1 2];
v = [2 4 -1 1 1];
w = conv(u,v,'valid')w =14     0    -5     8     7

5、 conv2 二维卷积

语法

语法1:C = conv2(A,B) 返回矩阵 A 和 B 的二维卷积。
语法2:C = conv2(u,v,A) 首先求 A 的各列与向量 u 的卷积,然后求每行结果与向量 v 的卷积。
语法3:C = conv2(___,shape) 根据 shape 返回卷积的子区。

1)二维卷积

代码及运算

A = rand(3);
B = rand(4);
Cfull = conv2(A,B)%6*6
Csame = conv2(A,B,'same')%中心部位Cfull =0.0781    0.8435    1.6181    1.6544    1.5357    0.72130.2367    1.2223    2.9144    3.6484    2.8119    1.09200.5183    1.4313    3.4028    4.2039    3.0881    1.37230.2844    2.0170    2.9532    3.0694    2.6967    0.98390.4857    1.3186    1.8013    1.5967    1.3232    0.48200.5008    0.1639    0.8645    0.2304    0.3948    0.0831Csame =3.4028    4.2039    3.08812.9532    3.0694    2.69671.8013    1.5967    1.3232

 2)例子:提取二维台座边

代码及运算

A = zeros(10);
A(3:7,3:7) = ones(5);
mesh(A)

视图效果

1) 计算水平边

代码及运算

u = [1 0 -1]';
v = [1 2 1];
Ch = conv2(u,v,A);
mesh(Ch)

视图效果 

 

 2)计算垂直边

代码及运算

Cv = conv2(v,u,A);
mesh(Cv)

视图效果

 

3) 绘制组合边长

6、convn N 维卷积

语法

语法1:C = convn(A,B) 返回数组 A 和 B 的 N 维卷积。
语法2:C = convn(A,B,shape) 根据 shape 返回卷积的子区。

 1)三维卷积

代码及运算

A = rand(2,3,2);
B = 0.25*ones(2,2,2);
C = convn(A,B)C(:,:,1) =0.1765    0.2457    0.0935    0.02430.1845    0.2652    0.3109    0.23010.0080    0.0195    0.2174    0.2059C(:,:,2) =0.3502    0.6570    0.4408    0.13400.4375    0.7644    0.7622    0.43520.0872    0.1074    0.3214    0.3013C(:,:,3) =0.1737    0.4113    0.3472    0.10970.2530    0.4991    0.4512    0.20510.0793    0.0879    0.1040    0.0954

代码及运算

A = rand(2,3,2);
B = 0.25*ones(2,2,2);
C = convn(A,B,'same')C(:,:,1) =1.1643    0.8855    0.47740.6798    0.4946    0.2022C(:,:,2) =0.6049    0.4434    0.20440.3586    0.2106    0.0407

代码及运算

 A = rand(2,3,2);
B = 0.25*ones(2,2,2);
C = convn(A,B,'full')C(:,:,1) =0.0297    0.2697    0.3863    0.14630.1543    0.4794    0.5273    0.20230.1246    0.2097    0.1410    0.0560C(:,:,2) =0.2176    0.5840    0.7355    0.36900.4059    1.0322    1.2911    0.66480.1884    0.4482    0.5556    0.2958C(:,:,3) =0.1878    0.3143    0.3492    0.22270.2516    0.5528    0.7638    0.46250.0638    0.2385    0.4146    0.2398

代码及运算

A = rand(2,3,2);
B = 0.25*ones(2,2,2);
C = convn(A,B,'valid')C =0.8574    0.8072

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/850899.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

双系统 Ubuntu无静态IP

需求:需要静态IP固定到网卡上 问题:只有连接有线或无线,才会有显示网卡,怎么办 习惯了windows装vmvare后装其他系统做实验,认为自动会有一些网卡 ,但是我装了双系统后(Windows11/Ubuntu22.04&am…

UnityXR Interaction Toolkit 如何使用XRHand手部识别

前言 Unity的XR Interaction Toolkit是一个强大的框架,允许开发者快速构建沉浸式的VR和AR体验。随着虚拟现实技术的发展,手部追踪成为了提升用户交互体验的关键技术之一。 本文将介绍如何在Unity中使用XR Interaction Toolkit实现手部识别功能。 准备工作 在开始之前,请…

46.SQLserver中按照多条件分组:查询每个地方的各种水果的种植数量,新增时,一个地方同时有几种水果,只插入一条记录,同时多种水果之间使用|隔开

1.SQLserver中按照多条件分组 ,分组条件包括(一个字段使用|进行分割,如:apple|orange,查询时,apple和orange分别对应一条数据) 例如:SQL如下: SELECT FROM ( SELECT CDFBM 地方编码…

Mybatis-plus 自动填充字段

需要注意的是,MetaObjectHandler 对Mybatis-plus 自动生成的 CRUD 方法起作用,对于手写 XML 文件的 insert、update 语句,不会直接起作用。 package com.ruoyi.common.mybatisplus;import com.baomidou.mybatisplus.core.handlers.MetaObjec…

python虚拟环境下 .gitignore 要忽略什么

在Python虚拟环境中,.gitignore 文件用于告诉 Git 哪些文件和目录是不需要添加到版本控制中的。以下是一个典型的 Python 虚拟环境中 .gitignore 文件的内容: # Byte-compiled / optimized / DLL files __pycache__/ *.py[cod] *$py.class# C extension…

统信UOS1070上配置文件管理器默认属性01

原文链接:统信UOS 1070上配置文件管理器默认属性01 Hello,大家好啊!今天给大家带来一篇关于在统信UOS 1070上配置文件管理器默认属性的文章。文件管理器是我们日常操作系统使用中非常重要的工具,了解如何配置其默认属性可以极大地…

apache poi 插入“下一页分节符”并设置下一节纸张横向的一种方法

一、需求描述 我们知道,有时在word中需要同时存在不同的节,部分页面需要竖向、部分页面需要横向。本文就是用java调用apache poi来实现用代码生成上述效果。下图是本文实现的效果,供各位看官查阅,本文以一篇课文为例,…

小陈的容器镜像站

小陈的容器镜像站 背景 由于不可抗力原因建立了镜像站,支持多平台容器镜像代理。 镜像使用优先级:官方地址 > 镜像地址 > 阿里云地址 替换地址 gcr.io >>>>> gcr.chenby.cnquay.io >>>>> quay.chenby.cng…

整理好了!2024年最常见 20 道分布式、微服务面试题(五)

上一篇地址:整理好了!2024年最常见 20 道分布式、微服务面试题(四)-CSDN博客 九、什么是API网关,它在微服务架构中扮演什么角色? API网关(Application Programming Interface Gateway&#xf…

数据库的基础概念

1、什么是数据库? 引用百度词条 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合,可视为电子化的文件柜。   数据库技术是…

Linux系统推出VB6开发IDE了?Gambas,Linux脚本编写

第一个Linux程序,加法计算加弹窗对话框,Gambas,linux版的类似VB6的IDE开发环境 一开始想用VB6的Clng函数转成整数,没这函数。 输入3个字母才有智能提示,这点没做好 没有msgbox函数,要用messagebox.warning 如果可以添加函数别名就…

uniapp 使用秋云ucharts,实现线状图横线滚动

其实仔细阅读官网说明文档&#xff0c;能找到答案&#xff0c;但是咱们着急实现功能&#xff0c;直接点上代码。 *标签上注意的是需要设置:ontouch"true"* <view class"" style"width:100%;height:610rpx;"><qiun-data-charts type&q…

[书生·浦语大模型实战营]——第六节 Lagent AgentLego 智能体应用搭建

1. 概述和前期准备 1.1 Lagent是什么 Lagent 是一个轻量级开源智能体框架&#xff0c;旨在让用户可以高效地构建基于大语言模型的智能体。同时它也提供了一些典型工具以增强大语言模型的能力。 Lagent 目前已经支持了包括 AutoGPT、ReAct 等在内的多个经典智能体范式&#x…

通过双模式对抗提示越狱视觉语言模型

最近&#xff0c;将视觉整合到大型语言模型&#xff08;LLMs&#xff09;中的兴趣显著增加&#xff0c;催生了大型视觉语言模型&#xff08;LVLMs&#xff09;。这些模型结合了视觉和文本信息&#xff0c;如LLaVA和Gemini&#xff0c;已经在包括图像字幕、视觉问题回答和图像检…

论文阅读:All-In-One Image Restoration for Unknown Corruption

发表时间&#xff1a;2022 cvpr 论文地址&#xff1a;https://openaccess.thecvf.com/content/CVPR2022/papers/Li_All-in-One_Image_Restoration_for_Unknown_Corruption_CVPR_2022_paper.pdf 项目地址&#xff1a;https://github.com/XLearning-SCU/2022-CVPR-AirNet 代码解读…

c++中, 直接写浮点数, 是float 还是 double?

如果直接一个浮点数, 那么他默认是float还是double呢? 测试用例 #include <iostream> using namespace std;int main() {auto x 0.2;float f 0.2;double d 0.2;cout << "x Size : " << sizeof(x) << " bytes" << endl…

vue28:组件化开发和根组件

简单写个点击事件 <template> <div class"app"><div class"box" click"fn"></div></div> </template><script> export default {//导出当前组件的配置项//里面可以提供 data methods computed wat…

AtCoder Beginner Contest 356 G. Freestyle(凸包+二分)

题目 思路来源 quality代码 题解 对n个泳姿点(ai,bi)建凸包&#xff0c;实际上是一个上凸壳&#xff0c; 对于询问(ci,di)来说&#xff0c;抽象画一下这个图&#xff0c;箭头方向表示询问向量 按x轴排增序&#xff0c;并且使得后面的y不小于前面的y&#xff0c;因为总可以多…

java asm使用切面

在Java中&#xff0c;使用ASM框架实现切面主要涉及到字节码操作和运行时动态代理。ASM是一个流行的Java字节码操作库&#xff0c;它允许开发者在编译时期或运行时期修改类和方法的行为。以下是使用ASM实现切面的方法&#xff1a; ### 一、引入依赖 首先&#xff0c;在你的项目中…

C++ Easyx案例实战:Cookie Maker工作室1.0V

前言 //制作属于自己的工作室&#xff01; 注&#xff1a;运行效果以及下载见Cookie Maker 工作室成立程序。 关于Cookie Maker工作室成立的信息&#xff0c;I am very happy&#xff08;唔……改不过来了&#xff09;。 OKOK&#xff0c;第一次用图形库写程序&#xff08;图形…