图像是视觉信息的直接反应,图像呈现出各种各样的特效都是通过图像的基本运算来完成的。图像最基本的运算有三种,分别是scale,rotation 和translation,叫做尺度,旋转和平移。很多图像的特效都可以用这三种基本运算来实现。可以对像素值或者像素的坐标做这些运算来达到特定的效果。

像素有两个属性,一个是像素的值,一个是像素的坐标。像素的值记录了像素的强度信息,像素的坐标记录了像素的空间信息。

先考虑对像素值的三种运算。(这里假设像素的取值范围为 0-1)。

scale: 对像素值做scale,相当于对图像做增强(scale 大于1)或者减弱 (scale 小于 1)。

rotation:像素值的旋转不好理解,但是可以想象 0-1 的区间不是一条直线,而是一个圆,将0-1的区间分成等弧   度的很多份。像素值的旋转,就相当于在圆周上做translation,这种处理的好处之一在于,像素值永远不会超出 0-1 的取值范围,因为旋转具备周期性。

translation:对像素值做平移,可以认为是对图像强度整体的提升或者减弱。

对像素坐标的三种运算:

scale:对图像坐标做scale,相当于对图像做缩放。

rotation: 对图像坐标做rotation,就是对像素点做旋转。

translation: 对图像坐标做translation,就是以某个轴做翻转进而改变像素点的相对位置。

对图像坐标的运算,会涉及到插值的问题,因为新的坐标不一定是整数,所以需要用新坐标周围的像素点来计算新坐标的像素值。而一般的插值会用双线性插值,并且利用逆向运算。

事实上,PS中的很多图像特效和图像调整算法都是基于这三种基本运算对像素值或者像素坐标的操作来实现的。比如图层的混合原理,可以理解为对图像的像素值做了scale和translation。利用这三种运算,经过精心的设计,就可能创造出很多有趣的图像特效。

图像的基本运算——scale, rotation, translation相关推荐

  1. 数字图像处理 实验一 图像的基本运算

    实验一 图像的基本运算 一.实验目的 (1)掌握点运算和代数运算的算法实现和概念 (2)掌握和几何运算的算法实现和概念 (2)掌握灰度变换和几何变换的基本方法 (3)理解图像灰度直方图的概念 二.实验 ...

  2. python-OpenCV图像的基本运算

    本节主要是进行图像一些基本运算,包括加减乘除,均方差运算,亮度对比度,逻辑运算. 以上对图像的操作均是对像素的处理,bitwise_and.bitwise_or.bitwise_xor.bitwise ...

  3. 2020-2021学年——图像图形编程实践实验2_图像的基本运算

    图像的基本运算 实验目的 1.了解图像的算术运算在数字图像处理中的初步应用; 2.体会图像算术运算处理的过程和处理前后图像的变化. 实验设备 PC机.matlab2018b 实验原理   图像的代数运 ...

  4. 图像处理-Opencv入门(3)-图像的基本运算(1)-代数运算

    一.概述 1.1 图像代数运算 图像代数运算是指两幅图像对应像素的加.减.乘.除运算,有其组合的运算成为复合代数运算. 1.2 功能 图像代数运算可以抑制噪声或消除噪声,也可以利用叠加运算合成新的图像 ...

  5. 图像特效及滤镜算法汇总

    OpenCV 版:OpenCV 图像处理 PS 图像处理算法汇总 图层混合算法: PS图层混合算法之一(不透明度,正片叠底,颜色加深,颜色减淡) PS图层混合算法之二(线性加深,线性减淡,变亮,变暗) ...

  6. 自监督3D手部姿态估计方法

    作者 | 镜子@知乎 来源 | https://zhuanlan.zhihu.com/p/446726196 编辑 | 极市平台 导读 手部姿态估计任务作为一个对空间信息敏感的下游任务,任何改变空间信 ...

  7. Hands-on C++ Game Animation Programming阅读笔记(三)

    Chapter 4: Implementing Quaternions 其实很多人物的动画里,只有rotation,没有平移或者scale上的变化. Most humanoid animations ...

  8. Cocos2d-x Lua库函数剖析(二)cocos2d

    这一篇主要包含了一些数学函数和颜色等,代码中有简单注释. cc = cc or {}function cc.clampf(value, min_inclusive, max_inclusive) -- ...

  9. Animation动画概述和执行原理

    动画入门和进阶文章列表: Animation动画概述和执行原理 Android动画之补间动画TweenAnimation Android动画之逐帧动画FrameAnimation Android动画之 ...

最新文章

  1. 如果你还记得我[转载]
  2. AndroidStudio_ListView
  3. c语言用两个栈构造队列伪码,数据结构习题线性表栈队列.doc
  4. STM32 RTC BKP备份数据区数据丢失问题的讨论
  5. 2.7 Inception 网络-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
  6. 怎么写脚本_直播脚本怎么写|请收下这份攻略
  7. spring-boot 添加http自动转向https
  8. Excel还是那些事
  9. 【SpringBoot 】 组件管理 + 属性注入
  10. UVA10359 Tiling【大数+递推】
  11. Python 实现Mac 屏幕截图
  12. 如何搭建易企秀H5平台?
  13. Newline required at end of file but not found
  14. win10安装Mysql8的两种方式(安装/卸载-图文教程)
  15. python的答辩问题及答案_计算机毕设答辩时都会问到哪些问题?
  16. 平板win10 android哪个耗电,win10开启平板模式省电吗?win10平板模式省电方法
  17. A.一个部族,一个民族,一个弗雷尔卓德(素数筛+线段树)
  18. 华大单片机-串口通讯多字节
  19. ycm-core/YouCompleteMe
  20. Prolog教程 10

热门文章

  1. 网传学习通1.7亿密码泄露:有什么补救措施?
  2. win7_64位下部署Apache+Mysql5.7.19+Php7+Snipe-IT
  3. Office 365实现多人在线编辑同一个文档(下)
  4. word柱状图垂直轴数值设定_Excel图表中设置坐标轴的字体、图案格式、刻度格式和数字格式的方法...
  5. RT throttling分析【转】
  6. LINUX基础知识笔记全
  7. NodeJS充分利用多核CPU以及它的稳定性
  8. element-ui中的多层表单循环验证处理
  9. 多目标优化系列(四)RM-MEDA
  10. 计算机提示存储空间不足怎么办,Win7软件提示"存储空间不足,无法处理此命令"怎么办...