Reflect
来源:互联网 发布:linux sed 删除指定行 编辑:程序博客网 时间:2024/05/17 09:25
http://homepages.inf.ed.ac.uk/rbf/HIPR2/reflect.htm
Reflect
Common Names: Reflect, Symmetry
Brief Description
The reflection operator geometrically transforms an image such that image elements, i.e. pixel values, located at position in an original image are reflected about a user-specified image axis or image point into a new position in a corresponding output image. Reflection is mainly used as an aid to image visualization, but may be used as a preprocessing operator in much the same way as rotation. Reflection is a special case of affine transformation.
How It Works
Reflection can be performed about an image axis or a point in the image. In the case of the former, some commonly used transformations are the following:
- Reflection about a vertical axis of abscissa in the input image:
- Reflection about a horizontal axis of ordinate :
- Reflection about an axis oriented in any arbitrary direction , and passing through :
where .
Note that if is not in the center of the input image, part of the image will be reflected out of the visible range of the image. Most implementations fill in image areas out of which pixels have been reflected with black pixels.
- From this discussion, it is easy to see that horizontal and vertical reflection about a point in the input image are given by:
Guidelines for Use
The simplest reflection we can define reflects an image about an axis located in the center of an image. For example, we can reflect
about a vertical axis in the center of the image to produce
Similarly,
shows the reflection of
about a horizontal axis passing through the image center.
Reflection about a point in the center of the image maps
into
This result, of course, could also be achieved by rotating the image through 180 degrees about its center.
A popular application for reflection is symmetry analysis. For example, consider the image
A quick examination of this face might lead us to believe that the left and right halves were mirror images of each other. However, if we reflect this image (about a carefully selected axis running vertically between the eyes) and then create two new images such that (i) the first contains the original left half of the face, joined in the middle to a reflection of the left half and (ii) the second contains a similar description of the right half of the face, we see that this is not the case. A comparison of the left
and right
reflection images reveals differences in the fur color, eye shape/expression, nose orientation, whisker alignment, etc.
Interactive Experimentation
You can interactively experiment with this operator by clicking here.
Exercises
- Consider image
What sort of reflection might have produced
- Using images
and
compare the reflection and rotation operators in terms of their computational speed and the quality of the resultant image.
- Perform a symmetry analysis (as in the example above) of the images
and
Alignment of the axis of reflection with the center of the face is tricky. You might want to consider putting it at a position equi-distant between both eyes.
- How might one inspect symmetric objects using reflection? Try your answer on an image containing a square with a corner missing).
References
D. Ballard and C. Brown Computer Vision, Prentice-Hall, 1982, Appendix 1.
B. Horn Robot Vision, MIT Press, 1986, Chap. 3.
- reflect
- reflect
- Reflect
- Reflect
- Reflect
- Reflect
- Reflect
- Reflect
- Reflect
- reflect
- Reflect
- reflect
- reflect
- Annotation + reflect
- java reflect
- reflect intro
- 反射reflect
- reflect学习
- 求正数数组的子数组之和等于给定值
- VS2010环境变量的配置
- hdu 4327 简单立体几何 + 半平面交
- Translate
- Affine Transformation
- Reflect
- 仿射變換
- jasperreports<子报表+交叉报表+分组>单据模式统计当前页码/总页码 - 开发心得
- HTML+CSS+JavaScript小结
- 设置socket缓冲区大小
- android local socket
- 【32位和64位不同的操作系统】环境的配置,如何区分JDK,Tomcat,eclipse的32位与64版本
- ORA-00600 [kmgs_parameter_update_timeout_1], [27072] ORA-27072 解决方法
- Classification