demi的博客

【算法学习】空洞卷积

一、空洞卷积的提出

空洞卷积(atrous convolutions)又名扩张卷积(dilated convolutions),向卷积层引入了一个称为 “扩张率(dilation rate)”的新参数,该参数定义了卷积核处理数据时各值的间距。

该结构的目的是在不用pooling(pooling层会导致信息损失)且计算量相当的情况下,提供更大的感受野。 顺便一提,卷积结构的主要问题如下:
池化层不可学
内部数据结构丢失;空间层级化信息丢失。
小物体信息无法重建 (假设有四个pooling layer 则 任何小于 2^4 = 16 pixel 的物体信息将理论上无法重建。)

而空洞卷积就有内部数据结构的保留和避免使用 down-sampling 这样的特性,优点明显。

二、空洞卷积原理

如下如,卷积核没有红点标记位置为0,红点标记位置同正常卷积核。

大众消费者容易对物联网产生这5个误解!

万物互联是未来时代的发展趋势,物联网的应用正一步步改变着世界,也改变着我们的日常生活。在物联网遍及社会生活的每个角落之前,我们有必要认清关于物联网的5个认知误区。

什么是物联网?它是一套新的连接技术,有望在未来十年内为数十亿的设备提供网络连接。这套技术,也就是物联网。它涵盖洗碗机、烘干机及其他的家用电器,还有车辆及公共场所的一些设施,甚至覆盖无数工业应用。他们的共同点是:收集数据并将其发送到企业或其他系统中。

虽然人们接触物联网这个词汇有一段时间了,但是对于它到底是什么以及它在物理世界中的工作方式,尚存困惑。以下是关于物联网技术的一些主要误区,认知这些误区在一定程度上可供企业高管和其他试图入局物联网的企业参考。

1. 物联网的规模很小?

当我们向别人介绍什么是物联网时,通常会提到智能手环、共享单车、智能售货柜等较小的设备来回答这个问题。因此,很多人认为物联网是小规模的。事实上,物联网的应用远非这些,智能手环属于可穿戴设备领域,共享单车属于智慧交通领域,智能货柜属于新零售领域,此外还有智慧城市、智慧物流、工业4.0等等领域,而这些,又仅仅是物联网架构的行业应用。

GPU图像处理的基本流程

现代GPU提供了顶点处理器和片段处理器两个可编程并行处理部件。在利用GPU执行图像处理等通用计算任务时,要做的主要工作是把待求解的任务映射到GPU支持的图形绘制流水线上。

通常的方法是把计算任务的输入数据用顶点的位置、颜色、法向量等属性或者纹理等图形绘制要素来表达,而相应的处理算法则被分解为一系列的执行步骤,并改写为GPU的顶点处理程序或片段处理程序,然后,调用3D API执行图形绘制操作,调用片段程序进行处理;最后,保存在帧缓存中的绘制结果就是算法的输出数据。

虽然数字图像处理算法多种多样,具体实现过程也很不相同,但是在利用GPU进行并行化处理时,有一些共性的关键技术问题需要解决,如:数据的加载,计算结果的反馈、保存等。

下面对这些共性的问题进行分析,并提出相应的解决思路。

1. 数据加载

常见的WiFi攻击技术及检测方法总结

导语:IEEE 802.11是无线局域网通用的标准,它是由IEEE所定义的无线网络通信的标准。虽然有人将Wi-Fi与802.11混为一谈,但两者并不一样。

802.11标准下常见的WiFi攻击

流量嗅探

实际上,所有的WiFi流量都可以在监控模式下使用适配器进行嗅探。大多数Linux发行版都支持将某些WiFi芯片组放入这个监控的模式中,这样就可以处理所有网络流量。

加密的网络也没有你想象的安全,WEP加密甚至WPA2-PSK都是不安全的,攻击者可以通过欺骗一个deauthentication框架来强制一个新的身份验证过程,从而将你的设备与网络断开。

由于嗅探流量是被动进行的,不能被检测到。所以实际上所有开放或关闭的WiFi通信都是公开的,这就要求在更高层次上进行通信加密,比如HTTPs。

暴力访问

和其他密码一样,无线网络的密码也可以被暴力获取。WEP可以通过分析记录的流量在几分钟内被破解,并被渲染成无用的。所以对于WPA安全网络,黑客只需要一个标准的字典攻击即可达到目的。

学习机器学习需要理解的五个基本概念

这篇文章主要讲述了机器学习的相关内容,阐述了机器学习的主要意义和形成过程。区别了机器学习与AI、深度学习、神经网络等专业词汇。

大多数人可能对机器学习有点恐惧或困惑。 脑子中会有它到底是什么,它有什么发展方向,我现在可以通过它挣钱吗等等这样的问题。

这些问题的提出都是有依据的。事实上,你可能没有意识到自己其实多年来一直在训练机器学习模型。你看过苹果手机或者是Facebook上的照片吧? 你知道它如何向你展示一组面孔并要求你识别它们吗?其实,通过标记这些照片,你正在训练面部识别模型去识别新面孔。恭喜你,现在可以说你有训练机器学习模型的经验了!但在此之前,请阅读这些机器学习基础知识,以便你可以准确回答任何后续问题。

1)机器学习可以预测

如果你只是在图片中标记朋友的面孔,那就不是在用机器学习模型。如果你上传了一张新照片系统马上告诉你每个人是谁,那你就是应用了机器学习模型。机器学习的主要意义在于根据图案模型和经过训练的其他因素来预测事物。它可以预测任何事物,如要基于地理位置和卧室数量预测房价,基于一年中的时间和天气的变化预测航班是否会延误,依据图片中的人物特点进行人像识别等等。

基于离屏渲染技术确定raycasting算法中的投射光线参数

raycasting算法在众多体绘制算法中以采样精度高,绘制图像细腻著称,但计算量的缺点阻碍了它的广泛应用。

GPU的raycasting算法被提出后,达到了实时交互的绘制速度。近年来,该技术逐渐成熟,可分为两类:单通路和多通路。多通路最早被提出,由于GPU的可编程性能较差,需绘制体数据包围盒多次来计算光线参数,而随着GPU的可编程性能提高,单通路算法被提出,只需绘制一次体数据包围盒就可获得投射光线参数,但顶点着色程序较为复杂。最近利用离屏渲染获取投射光线参数的方法被提出,该方法绘制包围盒两次来获取投射光线参数,避免的复杂的顶点着色程序。下面对该算法进行详细的叙述。

主要由以下几个部分组成:

(1). 3D纹理的生成。保存原始3D体数据场为3D纹理。

(2). 投射光线起始点、终点的确定。利用Framebuffer object执行离线渲染来确定投射光线参数。Framebuffer object于2005年提出,主要用于离屏渲染,它在显存中定义一块存储区域作为帧缓存使用,和真正的帧缓存一样,同样包括颜色缓存、深度缓存和模板缓存等,不同的是将绘制的结果保存在与Framebuffer object绑定的纹理对象中,而不是直接显示在屏幕上。确定投射光线起点、终点等参数的步骤如下:

Unity开发中提升效率的高级技巧(一)

作为一名Unity3D游戏开发者,无论是初学者,还是已经就业的工作者,在平时的学习工作里,掌握一些Unity开发的高级技巧,能够很好的节省开发时间,提高开发效率,毕竟世界如此美丽精彩,我们应当把时间花费在更有价值的事情上。

Unity开发技巧:

1、借助编辑器自带的标记功能为脚本分类,在检视面板中点击脚本图标下方的小三角,即可为脚本设置颜色或选择图标,可以选择自定义的图标。

Unity开发中提升效率的高级技巧

2、在使用Debug.Log函数时传递游戏对象给第二个参数gameObject,既可在点击控制面板的输出信息时自动定位到对应的游戏对象,方便查找游戏物体。

三分钟看懂人工智能核心技术:深度学习

自从2012年以来,深度学习(Deep Learning)就以一种势如破竹之势突破了一个个经典的人工智能问题。面对人工智能的快速发展,你不想了解它的基本工作原理吗?

想搞清楚什么是深度学习,要先从人工智能说起,自从 1956 年计算机科学家们在达特茅斯会议(Dartmouth Conferences)上确认人工智能这个术语以来,人们就不乏关于人工智能奇思妙想,我们梦想着拥有人类五感(甚至更多)、推理能力以及人类思维方式的神奇机器。如今,虽然梦想的局面还没有出现,但是稍微弱一点的人工智能已经大行其道了,比如:图像识别、语音识别、多语言翻译等。

机器学习是实现人工智能的一种重要方法。机器学习的概念来自早期的人工智能研究者,简单来说,机器学习就是使用算法分析数据,从中学习并自动归纳总结成模型,最后使用模型做出推断或预测。与传统的编程语言开发软件不同,我们使用大量的数据送给机器学习,这个过程叫做“训练”。

Canny边缘检测算法的一些改进

传统的Canny边缘检测算法是一种有效而又相对简单的算法,可以得到很好的结果(可以参考上一篇Canny边缘检测算法的实现)。但是Canny算法本身也有一些缺陷,可以有改进的地方。

1. Canny边缘检测第一步用高斯模糊来去掉噪声,但是同时也会平滑边缘,使得边缘信息减弱,有可能使得在后面的步骤中漏掉一些需要的边缘,特别是弱边缘和孤立的边缘,可能在双阀值和联通计算中被剔除。很自然地可以预见,如果加大高斯模糊的半径,对噪声的平滑力度加大,但也会使得最后得到的边缘图中的边缘明显减少。这里依然用Lena图为例,保持Canny算法中高阀值100,低阀值50不变,高斯半径分别为2,3,5的Canny边缘二值图像如下。可知高斯模糊把很多有用的边缘信息也模糊掉了,因此如何精确的选择高斯半径就相当重要。

2019云安全预测

云计算的飞速增长将极大改变明年的安全态势。

企业上云的主要驱动力是其高效性、部署便捷性和可扩展性。但从安全角度上看,云计算的快速采用迫使安全人员去学习关于新安全问题的知识,去了解云相关风险和相应缓解措施,以及去开发更先进的网络安全策略。

过去这一年也带来了更多与云账户错误配置相关的安全事件,且随着越来越多的企业虽然采用云计算却疏于扩充自身云安全团队或聘用深入了解云安全问题的专业人士,2019年里此类安全事件仍有继续增多的趋势。

这些最近的趋势预示着怎样的未来呢?至少,下面这6个云安全预测你应该了解一下:

预测1:无服务器架构将驱动云安全自动化

公司企业在进一步向无服务器架构迁移的同时,也发现了云安全自动化的更多用例,因为无服务器功能可将安全逻辑作为对云事件的响应来启动。例如:因服务滥用、拒绝服务攻击或加密货币挖矿而导致云账户费用激增或异常时;有人试图在正常部署规划之外设置新的云资产/服务或代码时;对作为部署规划一部分的新代码或云资源进行合规检查时。

预测2:云提供商将肩负主要安全责任