/play-with-opencv

Primary LanguageHTMLApache License 2.0Apache-2.0

Play with OpenCV

Draft

What OpenCV can do?

  • Image Processing: Modify image
  • Video Analysis ?
  • Object Detection: [perception] Detect object (for one moment: image)
  • Object Tracking: [perception] Track object (for a series of moment: video)

What is used in our project?

  • Modify image
  • Detect object

What means Modify image?

  • 修改的范围

    • 修改粒度
      • 像素级任意图形:mask
        • 怎么找到这个任意图形
          • 对图像里的像素进行扫描,找到想要的像素集
        • 有人找到,交给你
          • sam model 可以给你
          • open cv 的 object detect 可以给你
      • 规则图形
        • rectangle
  • 修改像素值

    • 修改粒度
      • 整个范围,用一个颜色。
      • 每个像素,用一个颜色。
  • 维度

  • row range

  • col range

图像:

  • 2 维排列的像素,行列数 width * height。
  • 每个像素,对应一个像素值。通常是色值。

Mask:

  • mask 代表了,在一张固定尺寸的位图上的,一份像素级范围和颜色信息。
  • mask 在 open cv 里,以 cv.Mat 的形式存在

衍生规律

  • 只要范围粒度或者颜色粒度,有一个是像素级的,都必须用 mask 定义。

cv.Mat

  • 是一个 n 维数组。
  • 其元素为统一定义为一种类型。可选类型,最多为 4 个通道,即有 4 个数值组成的元素值,每个数值可以定义为 unsigned/signed * 8/16/32/64 bit 的数值。like CV_16SC3 or 16-bit signed 3-channel array。
  • 当它是一个 2 维数组,且元素为色值时,它就描述了一张图片。

cv.Scalar 是什么概念

  • 1~4 个数值,组成的元组
  • 用于描述元素值

roi 在 cv 里是什么概念?

  • 兴趣范围?