首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

双边滤波算法原理

图像平滑是一个重要的操作,而且有多种成熟的算法。这里主要简单介绍一下Bilateral方法(双边滤波),这主要是由于前段时间做了SSAO,需要用bilateral blur 算法进行降噪。Bilateral blur相对于传统的高斯blur来说很重要的一个特性即可可以保持边缘(Edge Perseving),这个特点对于一些图像模糊来说很有用。一般的高斯模糊在进行采样时主要考虑了像素间的空间距离关系,但是却并没有考虑像素值之间的相似程度,因此这样我们得到的模糊结果通常是整张图片一团模糊。Bilateral blur的改进就在于在采样时不仅考虑像素在空间距离上的关系,同时加入了像素间的相似程度考虑,因而可以保持原始图像的大体分块进而保持边缘。在于游戏引擎的post blur算法中,bilateral blur常常被用到,比如对SSAO的降噪。

03
您找到你想要的搜索结果了吗?
是的
没有找到

Schizophrenia Bulletin: 精神分裂症的神经系统软体征和结构脑网络异常

一、研究背景 按照传统的定义方法,神经系统软体征(Neurological Soft Signs, NSS)被定义为一组轻微的神经系统功能障碍体征,其常见于精神分裂症(Schizophrenia, SZ),当然其他精神疾病甚至正常人也会表现出NSS。在精神分裂症患者中,NSS主要表现为运动、感觉功能的异常。但是,NSS的神经机制目前似乎并不十分清楚。借助神经成像技术,越来越多的证据表明NSS与一些特定脑区的功能或形态异常密切相关。比如说,一些结构MRI研究表明,精神分裂症的NSS与前额叶、颞叶、丘脑、小脑等脑区的灰质形态特征相关。此外,越来越多的研究表明精神分裂症表现出异常的功能和结构连接异常,但是目前似乎很少有研究对精神分裂症的脑结构网络异常与NSS之间的联系展开探索。近期,一篇发表在《Schizophrenia Bulletin》杂志的题目为《Neurological Soft Signs and Brain Network Abnormalities in Schizophrenia》的研究论文对上述问题进行了研究,该研究利用图论方法对基于灰质形态构建的结构脑网络特征与NSS之间的关系展开研究。本文对该研究进行解读。

00

家族性与散发性精神分裂症脑功能网络的差异

具有阳性家族史的精神分裂症被称为家族性精神分裂症(familial-schizophrenia, PFS),家族性精神分裂症被认为是更多由遗传因素引起的,而具有阴性家族史的精神分裂被称为散发性精神分裂症(sporadic -schizophrenia, PSS),散发性精神分裂症被认为是更多由环境因素引起的。前人的研究表明,家族性精神分裂症和散发性精神分裂症临床症状存在一定差异[1, 2];此外,结构磁共振研究表明,与健康对照组和散发性精神分裂症患者相比,家族性精神分裂症患者具有更低的丘脑灰质密度[3]。但是,两种精神分裂症脑功能网络是否存在差异呢?本文主要根据参考文献[4]整理而成,文献[4]采用静息态磁共振技术,主要对家族性精神分裂症和散发性精神分裂症患者的脑功能网络及其拓扑结构进行了研究,以揭示两者之间的脑功能差异。笔者在这里对这篇文章的分析方法和结果进行剖析,希望各位朋友从中有所启发,对大家的研究有所帮助。

01

PNAS|助人为乐—助人行为能减轻自身身体疼痛

亲社会行为被人类社会所高度推崇。从史前社会到现代文明,亲社会行为促进人们彼此分享和相互合作,使得群体成员能够幸免于食物短缺、自然灾害等各种各样的灾害。然而亲社会行为对于助人者来讲其实是一件消耗个人资源(比如,时间、金钱、食物等)的事情。而另一方面,亲社会行为也有其积极影响的一面。比如,担当志愿者或者从事一些亲社会行为对于身体健康有益。直观来看,亲社会行为不像是一个适应性的选择。因为人们完全可以给自己储备资源,进而增大自身存活的几率。但是,现实生活中,我们却发现这样一种现象:相比自然灾害较少地方的居民,发生自然灾害较多地区的居民助人行为更多。可见,在生命遭受威胁的环境下,人们仍会伸出援助之手。但目前人们助人行为的内部机制仍不清晰。

02

Django之Transform和lookup类

Transform是用于实现字段转换的通用类。一个显然的例子是__year会把DateField转换为IntegerField。 在表达式中执行查找的标记是Transform<expression>__<transformation> (例如 date__year)。 这个类遵循查询表达式API,也就是说你可以使用 <expression>__<transform1>__<transform2>。 bilateral 一个布尔值,表明是否对lhs和 rhs都应用这个转换。如果对两侧都应用转换,应用在rhs的顺序和在查找表达式中的出现顺序相同。默认这个属性为False。使用方法的实例请见自定义查找。 lhs 在左边,也就是被转换的东西。必须遵循查询表达式API。 lookup_name 查找的名称,用于在解析查询表达式的时候识别它。 output_field 为这个类定义转换后的输出。必须为Field的实例。默认情况下和lhs.output_field相同。 as_sql() 需要被覆写;否则抛出NotImplementedError异常。 get_lookup(lookup_name) 和get_lookup()相同。 get_transform(transform_name) 和get_transform()相同。 Lookup 类参考 Lookup是实现查找的通用的类。查找是一个查询表达式,它的左边是lhs,右边是rhs;lookup_name用于构造lhs和rhs之间的比较,来产生布尔值,例如lhs in rhs或者lhs > rhs。 在表达式中执行查找的标记是<lhs>__<lookup_name>=<rhs>。 这个类并不遵循查询表达式API,因为在它构造的时候出现了=<rhs>:查找总是在查找表达式的最后。 lhs 在左边,也就是被查找的东西。这个对象必须遵循查询表达式API。 rhs 在右边,也就是用来和lhs比较的东西。它可以是个简单的值,也可以是在SQL中编译的一些东西,比如 F() 对象或者QuerySet。 lookup_name 查找的名称,用于在解析查询表达式的时候识别它。 process_lhs(compiler, connection[, lhs=None]) 返回元组(lhs_string, lhs_params),和compiler.compile(lhs)所返回的一样。这个方法可以被覆写,来调整lhs的处理方式。 compiler是一个SQLCompiler对象,可以像 compiler.compile(lhs)这样使用来编译lhs。connection可以用于编译供应商特定的SQL语句。lhs如果不为None, 会代替self.lhs作为处理后的lhs使用。 process_rhs(compiler, connection) 对于右边的东西,和process_lhs()的行为相同。

03
领券