基于Criminisi算法的栅格影像数据敏感地物隐藏
栅格影像数据敏感地物伪装是指通过计算机智能识别与计算,将影像数据中的敏感地物进行识别与提取,将敏感地物智能替换成公共地物,如草地、森林、湖泊、公园等。但目前该技术并不成熟,同时栅格影像数据敏感地物伪装技术存在众多的技术难点,其中如何处理敏感地物伪装过程中的边界问题,使伪装后的地物与原地物周边环境吻合是当前要研究的重点与难点。
基于样本的纹理合成(Texture synthesis from samples)技术是近几年迅速发展起来的一种图像修复技术。它基于给定的小区域纹理样本,按照表面的几何形状,拼合生成整个曲面的纹理。利用纹理合成技术,还可以进行纹理填充,重现原有图片效果,基于样本的纹理合成是图像修复算法的成为研究热点。
Criminisi等利用局部边界的等照度线方向与法方向之间的角度,来定义块的搜索次序,使得丢失区域的结构部分先于纹理填充。这种方法至少和先前的修补细小裂痕的技术一样好,并且还能填充大块的丢失区域。它在视觉效果和计算效率上都要大大优于先前的方法。
Criminisi算法的具体程序算法流程描述如下:
(1)图像初值的读取,标识图像的待修复区域;
(2)计算边缘上所有待修补块的优先权;
(3)确定填充前缘上最高优先权的待修补块,计算好填充前缘上待修补块的优先权以后,选取优先权最大的待修补块;
(4)在样本区域中寻找与选定的最高优先权的待修补块最相似的样本块;
(5)把最佳样本块里面对应于选定的最高优先权的待修补块里面未填充好的像素点的图像颜色信息拷贝到待修补块的相应位置中;
(6)更新置信度,把刚刚填充好的像素点的置信度由0变为1,提取新的填充前缘,完成一个待修补块的填充修补后,需重新确定填充前缘;
(7)判断填充前缘是否为空,填充前缘如果为空,则表示图像的整个目标区域已填充完,程序退出;否则,返回到第(2)步骤。
算法效果如下图所示:(源代码暂不开放,因为还处在研究当中)

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述