学习openCV-Python Tutorial,在Image Processing in OpenCV这一节里有提到彩色空间的转换,结合其他的一些资料对彩色空间(Color Space),彩色模型(Color model)这些概念做一些总结。
彩色空间可以理解为彩色的集合,为了有效地表达彩色信息,需要建立和选择合适的彩色表达模型。通常一种彩色可以用3或4个基本量表示,所以彩色模型是彩色的一种数学抽象。在非正式的情况下彩色空间可以指彩色模型。
CIE已定义了若干种彩色模型,但至今还没有一种模型能满足所有彩色使用者的全部要求。目前所提出的彩色模型根据其基础原理的不同可以分成4大类;
(1)比色/色度模型,基于对光谱反射的物理测量;
(2)心里物理/精神物理学模型,基于人类对颜色的感知,如HSI模型;
(3)生理学模型,基于人类视网膜中存在3中基本的颜色感知锥细胞,如RGB模型;
(4)对立模型,基于感知实验,如HSB模型。
Opencv的例子中,将彩色空间从BGR 转换到HSV,因为在HSV彩色空间中表示色彩(color)比在RGB空间中更为容易。所以用这样的转换来简单实现视频中有特定颜色的物体。
[1].章毓晋.图像工程(第三版)[M].北京:清华大学出版社,2012:281.
[2].http://www.arcsoft.com/topics/photostudio-darkroom/what-is-color-space.html
[3].https://en.wikipedia.org/wiki/Color_space
[4].https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_imgproc/py_colorspaces/py_colorspaces.html#converting-colorspaces