模糊算法

可视化反投射:坍塌尺寸的概率恢复:ICCV9论文解读

∥☆過路亽.° 提交于 2020-04-04 10:47:21
可视化反投射:坍塌尺寸的概率恢复:ICCV9论文解读 Visual Deprojection: Probabilistic Recovery of Collapsed Dimensions 论文链接: http://openaccess.thecvf.com/content_ICCV_2019/papers/Balakrishnan_Visual_Deprojection_Probabilistic_Recovery_of_Collapsed_Dimensions_ICCV_2019_paper.pdf 摘要 我们介绍视觉投射:恢复沿维度折叠的图像或视频的任务。投影出现在各种情况下,例如长曝光摄影,动态场景被及时折叠以产生运动模糊图像,以及角部相机,其中场景中反射的光由于边缘遮挡器而沿空间维度折叠以产生 1D视频。反投影是不适定的——通常对于给定的输入有许多合理的解决方案。我们首先提出了一个捕捉任务模糊性的概率模型。然后,我们提出了一种以卷积神经网络为函数逼近器的变分推理策略。在测试时从推理网络中采样,从与给定输入投影一致的原始信号分布中产生可能的候选信号。我们在多个数据集上对该方法进行了评估。我们首先证明了该方法可以从空间投影中恢复人体步态视频和人脸图像,然后证明该方法可以从通过时间投影获得的剧烈运动模糊图像中恢复运动数字视频。 1. Introduction

模糊数字问题(枚举算法)

佐手、 提交于 2020-03-09 09:56:07
一张单据上有一个5位数的编码,因为保管不善,其万位数字和百位数已经变得模糊不清。但是知道这个5位数是57和67的倍数。现在要设计一个算法,输出所有满足这些条件的5位数,并统计这样的数的个数。 # include <stdio.h> int main ( ) { int n1 = 57 , n2 = 67 ; int pm = n1 * n2 ; //最小公倍数 int sum = pm ; while ( sum < 10000 ) sum + = pm ; for ( ; sum < 100000 ; sum + = pm ) { //5位数,每次递增公倍数 printf ( "%d\n" , sum ) ; } return 0 ; } 来源: CSDN 作者: 紫冷奇 链接: https://blog.csdn.net/qq_45874038/article/details/104742771

计算机视觉-计算机视觉基础

旧巷老猫 提交于 2020-03-05 09:48:57
1、加载、显示、保存图像 import argparse import cv2 ap = argparse.ArgumentParser() ap.add_argument("-i", "--image", required=True, help="Path to the image")#读取指定指令,获取图片。参数1:输入指令的头字母,参数2:需要输入的指令 args = vars(ap.parse_args()) image = cv2.imread(args["image"]) #读取指定参数的,读取照片 print "width: %d pixels" % (image.shape[1]) # 获取图像的宽度,横向尺寸,图像坐标系中,第二个参数 print "height: %d pixels" % (image.shape[0] )#获取图像的高度,竖向尺寸,图像坐标系中,第一个参数 注意:读取图像x,y互换 print "channels: %d" % (image.shape[2]) cv2.imshow("Image", image)#显示图片 cv2.imwrite("newimage.jpg", image) #将图片写入指定路径 cv2.waitKey(0)#等待程序结束 2、图像基础 (h, w) = image.shape[:2] #(x,y)像素中的显示

GANFuzz:A GAN-based industrial network protocol fuzzing framework

烂漫一生 提交于 2020-02-04 19:03:56
GANFuzz:A GAN-based industrial network protocol fuzzing framework 1.简介 1.GANFuzz,提出了一种新的测试用例生成方法,并在此基础上构建了一个模糊框架。 2.为了提高代码覆盖率和测试深度,提出了三种从不同维度对协议消息进行分类的聚类策略,利用这三种策略,所学习的生成模型可以生成更为多样化和格式良好的测试用例。 3.在实验中,使用GANFuzz原型测试了几个Modbus-TCP模拟器,成功地揭示了一些新的缺陷和已知的问题。 2.背景知识 GAN RNN作为generator CNN作为discriminator 3.方法 3.1 步骤 1.对msg进行聚类。在给定一个真实的协议msg集作为训练数据的情况下,我们采用三种聚类策略来提供三种方法来对数据进行分类。对于每一种策略,我们所关注的特征和功能w.r.t协议消息是不同的。它允许我们从不同的维度进行模糊处理。它有助于提高代码覆盖率和测试深度。 2.学习协议语法。我们使用生成对抗网络和SeqGan算法对将协议语法学习问题进行建模为估计生成模型的过程。通过深度学习训练,生成模型从真实的协议消息中自动揭示协议语法。 3.生成测试用例。学习的生成模型能够生成类似于真实协议消息的序列。利用生成模型可以生成模糊测试用例。 3.2 聚类msg NoClustering

运动模糊图像处理(一)----- 模糊角度估计的算法研究及matlab实现

大憨熊 提交于 2020-02-02 14:42:17
运动模糊图像复原研究的整体思路主要是用matlab中的 imfilter()函数对图像进行线性空间滤波,产生运动模糊图像,建立退化模型 → 通过radon变换来获取模糊参数,即点扩散函数PSF → 最后由估计得出的PSF再用维纳滤波对图像进行复原。由仿真实验得知,在已知PSF的情况下使用自相关函数的维纳滤波法对图像进行复原可以获得较好的复原效果,因此难点在于如何精确地估计运动模糊参数PSF。 1、基本原理: 点扩散函数PSF主要有两个重要参数:(1)模糊方向;(2)模糊尺度。本次主要是针对第一个参数----模糊方向的估计进行了研究。运动模糊方向是指运动方向与水平方向的夹角,由文献得知运动模糊主要是降低了运动方向的高频成分,而对其他方向的高频成分影响较小。常见的辨识方法有频域法和倒谱法,wym 两种方法都试过,仿真实验结果表两种方法各有好处。 频域法的原理是将退化图像进行二维傅里叶变换,得到具有相互平行的规则明暗条纹的频谱。设暗纹与 x 轴正向夹角为 φ ,运动模糊方向与 x 轴夹角为 θ ,图像尺寸为 M × N,根据傅里叶变换的时频特性可以知道,可通过公式 tan(θ) = tan(φ − 90°) × M/N 得到模糊角度 θ , 因此只要通过 Radon 变换检测出频谱暗条纹与水平方向的夹角即可到运动模糊方向。 倒谱法的主要原理是先将退化图像进行二维傅里叶变换,然后取对数

基于一阶倒立摆系统的模糊神经网络PID控制

*爱你&永不变心* 提交于 2020-01-26 03:05:03
基于一阶倒立摆系统的模糊神经网络PID控制 1.1 研究背景 模糊系统、神经网络和遗传算法被认为是21世纪人工智能最具发展前途的三个重要领域。它们构成了所谓的“智能计算”。随着科学技术的飞速发展,现代工业控制系统变得越来月复杂,基于精确数学模型的传统控制已经达不到理想的控制效果。智能控制是一种模拟人类智能的高级控制系统,它是基于知识的控制,是将控制者和专家经验与知识作为被控对象的模型。 倒立摆系统是一种典型的高阶、非线性、强耦合、多变量、不稳定的装置,通常被用来检验控制策略的有效性。因为倒立摆系统的竖直稳定状态与机器人直立行走的形态相似,同时又与火箭和飞控很相似,所以对倒立摆系统的学习和研究具有广泛、深远的事件意义。关于倒立摆的学习和研究对其它工程控制问题具有指导意义。 1.2 模糊神经网络概述 模糊控制是一门发展迅速、具有广阔应用前景的技术,它不受数学模型的束缚,而是利用人类专家的经验形成模糊语言,生成模糊控制列表,并在实际应用中经过人们反复修正,然后通过计算机采用查表的方法在控制列表中找出相应的模糊控制量,最后经过一定的比例运算得到实际控制量加到被控对象上。模糊控制的规则是由人类专家的经验知识写出的,所以模糊控制能够容易被理解。模糊控制的原理如图1.1所示。 图1.1 模糊控制原理框图 人工神经网络是指从信息处理角度对人脑神经元网络进行抽象,建立某种简单模型

前端移动端适配总结

邮差的信 提交于 2020-01-17 17:07:55
meta标签到底做了什么事情 做过移动端适配的小伙伴一定有遇到过这行代码: <meta name="viewport" content="width=device-width, initial-scale=1.0"> 但是,很多小伙伴只是感性的认识:噢,我加了这行代码,然后页面的宽度就会跟我的设备宽度一致。然而,这种理解是很片面的。那么,这句话的本质到底是什么呢? 不急,我们先往下面看,这里先留个悬念。 几个专有名词和单位 这里,我们先来辨析一下在适配的时候经常会遇到的一些名词、数值单位。 首先,先来看一下 物理像素 。 以iphone6为例,可知道: 分辨率 :1334pt x 750pt 指的是屏幕上垂直有1334个物理像素,水平有750个物理像素。 屏幕尺寸 :4.7in 注意英寸是长度单位,不是面积单位。4.7英寸指的是屏幕对角线的长度,1英寸等于2.54cm。 屏幕像素密度 :326ppi 指的是每英寸屏幕所拥有的像素数,在显示器中,dpi=ppi。dpi强调的是每英寸多少点。同时, 屏幕像素密度 = 分辨率 / 屏幕尺寸 接着,我们来看一下其他的单位。 设备独立像素 :设备独立像素,不同于设备像素(物理像素),它是虚拟化的。比如说css像素,我们常说的10px其实指的就是它。需要注意的是, 物理像素 开发者是无法获取的,它是自然存在的一种东西,该是多少就是多少。

图片模糊与去模糊之后对于Siamese网络追踪效果的影响

≡放荡痞女 提交于 2020-01-14 12:27:28
图片模糊与去模糊之后对于Siamese网络追踪效果的影响 1.数据集准备 (1)原始OTB100数据集,即序列A。 (2)27个序列用deblurGAN去模糊之后的OTB100数据集(因为原始的OTB100中有27个序列是模糊的),即序列B。 (注:以下27个序列是原始模糊的 Biker, BlurBody, BlurCar1, BlurCar2, BlurCar3, BlurCar4, BlurFace, BlurOwl, Board,Box, Boy, Deer, DragonBaby, Girl2, Human2, Ironman, Liquor, MotorRolling, Soccer, Tiger1, Tiger2, Woman ClifBar, David, Human7, Human9, Jump) (3)原始OTB100数据集加模糊(除了原来已经有模糊的27个序列),也得到100个序列,即序列C。 (注:加模糊的python代码如下:) (注:加模糊后的图片存储的时候直接把原始图片覆盖了,所以需要单独拷贝一个OTB100出来进行操作) (4)序列C用deblurGAN去模糊之后得到新的100个序列,即序列D。 2.实验模型准备 1.去模糊模型 见上一篇博客 2.OTB100数据集在tracker_benchmark_v1.0上的配置 主要配置流程在这篇博客

基于自适应最优多评价神经模糊控制的MIMO人体肌肉骨骼臂模型

左心房为你撑大大i 提交于 2020-01-11 23:01:52
Adaptive optimal multi-critic based neuro-fuzzy control of MIMO human musculoskeletal arm model 摘要: 人体利用电流使肌肉运动。由于脊髓损伤,大脑和肌肉之间的电信号断开,导致损伤程度以下的瘫痪。功能性电刺激(FES)是用来刺激肢体功能障碍的周围神经。应该选择这些电信号的电平,以便成功地完成所需的任务。用适当的控制器可以实现人的行为并完成所期望的任务已成为一个重要的研究领域。这篇文章研究了具有六块肌肉的手臂的多输入多输出(MIMO)肌肉骨骼模型,提出了一种基于自适应最优临界神经模糊控制器来控制手臂模型的终点。通过计算机仿真验证了神经模糊控制结构的有效性。自适应和肌肉力优化是神经模糊控制器的重要特征。结果表明,该方法具有良好的性能。 1.简介 脊髓的损伤阻止了大脑和肌肉之间的电信号,并导致损伤水平以下的瘫痪。功能性电刺激(FES)是一种利用电流激活残肢周围神经的技术。通过智能地选择电流的大小,患者可以成功地完成预期的任务。因此,需要合适的控制器来完成复杂和目标导向的运动,比如达到[1]。但是人体的四肢是非常灵活的,因为有大量的关节,而且在一个关节上活动的肌肉的数量通常超过了那个关节的自由度。人体的这两个重要特性分别称为运动学和动力学冗余,这引起了许多研究者对冗余系统控制的研究

MIUI 6的毛玻璃效果的技术实现(实时模糊)

点点圈 提交于 2020-01-11 03:59:47
说说MIUI 6的毛玻璃效果的技术实现。 很久以前我们的文件夹打开和最近任务等几个地方就使用了毛玻璃效果,在技术上讲就是背景模糊。应该是比iOS 7的使用要早很多。不过那时候我们使用的是先对背景截图,再将其模糊处理,然后作为app的背景图,所以是一张静止的图片,当背景内容发生变化时模糊的图片并不会随之变化,因此比较生硬。而iOS 7的背景模糊则是实时的,当背景变化的时候,模糊内容也会实时的变化。这就把我们给比下去了。于是我们也不能闲着,既然做了,那就做好。然后我就开始做实时的背景模糊。 如果沿用之前的方式,先截图,再模糊,由于这个过程远远大于一帧的时间16.7毫秒。因此就算不停的更新背景,虽然也能呈现出变化的模糊背景,但会很卡顿,不流畅,不自然,资源消耗大。 于是考虑更为自然的实现方式:在Window上添加标记,SurfaceFlinger合并层的时候对其后面的内容用OpenGL ES进行模糊处理。 这种方式没有截图的过程,绘制的时候用OpenGL ES绘制,加上一些优化,最终轻松达到60FPS的满帧率。 下面说说代码的主要过程和一些关键点。 需要背景模糊的Window给自己添加一个标记: FLAG_BLUR_BEHIND ,这个标记是Android SDK提供的,因为Android的早期版本是有支持背景模糊的,不过由于他们不是用的OpenGL ES实时绘制,性能比较差