博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图像边界扩展
阅读量:7050 次
发布时间:2019-06-28

本文共 992 字,大约阅读时间需要 3 分钟。

  对图像进行处理时,提取在边界的某些目标时会出现访问越界的错误,一般这种情况有两种解决方案:1.只对不越界的像素进行访问,见数据增强之图像旋转及坐标对应(附代码);2.对图像的边界进行扩展,这里对opencv中提供的图像边界扩展函数进行介绍。

  • 边界的拓展方式
1 //将边界最相近的像素进复制扩展 2 * BORDER_REPLICATE: aaaaaa|abcdefgh|hhhhhhh   3 //将边界像素进行镜像 4 * BORDER_REFLECT: fedcba|abcdefgh|hgfedcb   5 //将边界像素进行镜像 6 * BORDER_REFLECT_101: gfedcb|abcdefgh|gfedcba   7 //将边界翻转 8 * BORDER_WRAP: cdefgh|abcdefgh|abcdefg   9 //将边界自由赋值10 * BORDER_CONSTANT: iiiiii|abcdefgh|iiiiiii with some specified ’i’

   以上内容取自OpenCV的帮助文档。其中 “|” 表示的是图像的边界,两个“|”中间是图像的内容,最后一个边界拓展策略还要额外给定一个i值,用于对边界进行赋值。

                 

 

                

   上述图像依次是对应的扩展参数进行图像边界扩展结果,其中左上角是原图。

  • 函数原型及参数说明
void copyMakeBorder( InputArray src, OutputArray dst, int top, int bottom, int left, int right, int borderType, const Scalar& value=Scalar() )

  src:输入的数组。

  dst:输出的拓展边界后的数组。

  top:在src上边界向上拓展的行数。

  bottom:在src下边界向下拓展的行数。

  left:在src的左边界向左拓展的列数。

  right:在src的右边界向右拓展的列数。

  borderType:上一节中的边界拓展策略中的一个。

  value:当你的边界策略使用的是BORDER_CONSTANT的时候,此处是指边界处填写的常数值。

 

转载于:https://www.cnblogs.com/qinguoyi/p/8359363.html

你可能感兴趣的文章
【算法介绍】哈希排序算法
查看>>
js数组操作(增、删、改、查)
查看>>
UpdatePanel and JQuery Plugin
查看>>
centos5.7下的kdump
查看>>
[JavaEE笔记]Cookie
查看>>
【HDOJ】1987 Decoding
查看>>
ELK+Filebeat (1)
查看>>
leetcode 443. String Compression
查看>>
在没联网环境下,启动tomcat出错
查看>>
关于Git bash-127.0.0.7:8888拒绝访问的小问题--环境变量
查看>>
Java EE(七)
查看>>
javascript变量声明提升(hoisting)
查看>>
有价值的数据
查看>>
LayUi超级好用的前端工具
查看>>
[Ubuntu] ubuntu的tty下挂载移动硬盘拷贝数据
查看>>
PowerBI分析个人Exchange邮箱数据
查看>>
犯了个低级错误
查看>>
Win7部署基础知识(7):使用Imagex捕获和安装映像
查看>>
Outlook Anywhere 客户端配置详解
查看>>
IOS在Xcode 4.x以上如何 创建 和 添加 静态库
查看>>