.net做的网站代码二手房网站谁做的更好

张小明 2026/1/7 23:50:10
.net做的网站代码,二手房网站谁做的更好,宿松网站建设公司,互联网运营主要做什么一、概述 采用一维高斯滤波#xff08;可分离高斯滤波#xff09;的核心原因在于#xff1a;在保持与二维高斯滤波完全相同数学效果的前提下#xff0c;大幅降低计算复杂度并提升工程效率。由于二维高斯核可以严格分解为两个相互独立的一维高斯核#xff08;横向 纵向可分离高斯滤波的核心原因在于在保持与二维高斯滤波完全相同数学效果的前提下大幅降低计算复杂度并提升工程效率。由于二维高斯核可以严格分解为两个相互独立的一维高斯核横向 × 纵向可大大降低计算量对于大小为M×n的图像和大小为m×n的核实现卷积操作需要MNmn次乘法核加分运算计算公式如下3.35但是如果滤波核是可分离的对于w1行卷积核第一次卷积只需要MNm次乘法和加分运算因为w1卷积核的大小为m×1,对于w2列卷积核第二次卷积只需要MNn次乘法和加分运算所以共需要MN(mn)次乘法和加分运算因此可分离的核执行卷积运算可以大大减少计算量滤波核越大越明显(可见如下公式3.44)。二、二维高斯滤波首先我们讲解一下二维高斯滤波核的生成这里根据高斯函数可直接生成高斯滤波核代码如下// 二维高斯滤波核 std::vectorstd::vectordouble GaussianKernelGenerate(int kSize, double sigma) { int k kSize / 2; std::vectorstd::vectordouble kernel(kSize, std::vectordouble(kSize)); double sum 0.0; const double PI 3.14159265358979323846; for (int i -k; i k; i) { for (int j -k; j k; j) { double value static_castdouble((1.0 / (2 * PI * sigma * sigma)) * (exp(-(i * i j * j) / (2 * sigma * sigma)))); kernel[i k][j k] value; sum value; } } // 归一化 for (int i 0; i kSize; i) { for (int j 0; j kSize; j) { kernel[i][j] / sum; } } return kernel; }三、一维高斯滤波同理由高斯函数可知我们可以分解为两个一维的滤波进行卷积计算分离式滤波核正是opencv获得高斯滤波核的底层实现原理这里我们也用底层代码实现我们生成一维的卷积核先用一维卷积核对图像行向量进行卷积再用该滤波对图像的列向量进行卷积即可。代码如下// 分离式高斯滤波核 std::vectordouble GenerateSeparateGaussianKernel(int kSize, double sigma) { int k kSize / 2; double sum 0.0; std::vectordoublekernel(kSize, 0); const double PI 3.14159265358979323846; for (int i -k; i k; i) { double value static_castdouble((1.0 / (sqrt(2 * PI) * sigma)) * exp(-(i * i) / (sqrt(2) * sigma))); kernel[i k] value; sum value; } // 归一化 for (int i 0; i kSize; i) { kernel[i] / sum; } return kernel; }四、滤波分离这里我们重点讲解一下滤波分离首先我们是知道高斯函数是可分离的。那对于一般的滤波核呢我们不可以直接进行一维滤波计算首先是否可分离需要满足矩阵可分离性质即满足矩阵 行 × 列也就是秩为1。如果我们在计算位置滤波核的时候不确定这个矩阵的秩是否为1我们可以先用 SVD 计算一下它的秩或者观察它的奇异值。如果除了第一个奇异值外其他奇异值不为 0或接近 0那就不能分离。如果秩为1我们可以采用以下方法对其进行分解在核中找到任何一个非0元素并将其值表示为E形成行向量r和列向量c他们分别等于E元素所在的那一行和那一列这个时候这个r和c就是分离出来的行滤波核和列滤波核原理如下。代码如下// 将滤波核进行分离 void splitGaussianKernel(const std::vectorstd::vectordouble GaussianKernel, std::vectordouble c, std::vectordouble r) { // 获取高斯核的行和列 int rows GaussianKernel.size(); int cols GaussianKernel[0].size(); r.resize(rows); c.resize(cols); // 找到非零元素高斯核的中心就是最稳定的非零元素 double center GaussianKernel[rows / 2][cols / 2]; // 提取非零元素所在行 for (int i 0; i rows; i) { r[i] GaussianKernel[i][center]; } // 提取非零元素列 for (int j 0; j cols; j) { c[j] GaussianKernel[center][j]; } }
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

做cpa用单页网站好还是花都网站开发公司

目录 一、为什么选择Vue.js?核心优势解析 1. 渐进式框架:灵活可控,按需集成 2. 简洁易懂的API:降低开发成本 3. 高效的响应式系统:数据驱动视图 4. 强大的生态系统:一站式开发解决方案 二、Vue.js核心…

张小明 2026/1/5 18:09:22 网站建设

帝国调用网站名称许昌北京网站建设

Calflops终极指南:3分钟快速掌握深度学习模型FLOPs计算技巧 【免费下载链接】calculate-flops.pytorch The calflops is designed to calculate FLOPs、MACs and Parameters in all various neural networks, such as Linear、 CNN、 RNN、 GCN、Transformer(Bert、…

张小明 2026/1/5 18:09:19 网站建设

大转盘网站程序宝塔建设网站域名进不去

5G 时代光通信的关键技术解析 1. 系数优化与算法 在光通信相关的计算中,$E{\cdot}$ 表示期望算子。通过迭代梯度型优化算法,可以找到使特定方程最小化的系数 $h_{ij}(l)$。例如,以下是一组迭代公式: - $h_{11}(k + 1, l) = h_{11}(k, l) + μ δε_1 z_1(k)y_1^ (k + l…

张小明 2026/1/5 18:09:16 网站建设

淘宝的网站怎么做的好wordpress中文建站

EmotiVoice在直播带货中的情感化语音生成实践 在电商直播日益激烈的今天,一个主播能否“把人留住”,往往不在于说了什么,而在于怎么说。一句平淡的“这款面膜补水效果很好”,和一句充满激情的“姐妹们!这瓶精华涂上去就…

张小明 2026/1/5 18:08:49 网站建设

网站备案证书下载不了wordpress怎么添加子目录

基于C51单片机红绿黄交通灯的设计 第一章 系统概述 传统红绿黄交通灯多依赖固定电路控制,时序单一且无法灵活调整,难以适配不同时段车流量变化,易在高峰时段引发路口拥堵。基于C51单片机的红绿黄交通灯系统,以低成本、高可靠性的C…

张小明 2026/1/5 18:08:41 网站建设