我的图像是蛋白质的二维表面,我使用matlab函数“scatter”来显示图像,因此其中有一些白色的空白区域。
我想用颜色填充它们,但问题是这些点有不同的颜色,有些是红色,有些是橙色(点颜色由其RGB值决定)。
所以我想将空白区域的颜色指定为与其相应邻居相似的颜色。 我最初做的工作是首先提取多边形的边缘,这有助于我检测该点是否在多边形内部,因为我没有为多边形外部的空白分配颜色。
然后简单地逐个扫描整个图像像素来检查该像素是否是白色的,如果是,我只需将邻居颜色分配给它,就像我所说的,我必须检查该像素是否在白色内部多边形或不是每次都是。
但是速度真的很慢,而且结果也不够好,有人能给我一些建议吗?
我有2D散点图像和3D结构。2D中的每个点都可以找到一个 3D 对应,我不知道这些信息是否有帮助。
最佳答案
使用磁盘内核(7x7)进行侵 eclipse 后,例如然后是双边过滤器:
PS:如果您有 3D 点结构,请将其上传到某处并发布链接
关于matlab - 如何填充matlab函数 "scatter"生成的图像内的空白区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7487379/