zoukankan      html  css  js  c++  java
  • OpenCV中图像处理

    一.颜色空间转换

    1.cv2.cvtColor(input_img,flag)

    参数1是要转换的图像

    参数2是转换类型  例如:cv2.COLOR_BGR2HSV (RGB->HSV) cv2.COLOR_BGR2GRAY(RGB->灰度图),常用

    import cv2
    import numpy as np
    
    img = cv2.imread('timg5.jpg')
    img1 = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
    img2 = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
    cv2.namedWindow('img',cv2.WINDOW_NORMAL)
    cv2.namedWindow('Gray',cv2.WINDOW_NORMAL)
    cv2.namedWindow('hsv',cv2.WINDOW_NORMAL)
    cv2.imshow("img",img)
    cv2.imshow('Gray',img1)
    cv2.imshow('hsv',img2)
    cv2.waitKey(0)
    效果图:

                      

                    原图             灰度图                                          HSV图

    2.cv2.inRange(src, lowerb, upperb, dst=None)  二值化

    src:输入原图,可以为单通道灰度图像,也可以为3通道彩色图像
    lowerb:像素值区间下限
    upperb:像素值区间上限
    说明:单通道灰度图像,像素值低于lowerb和高于upperb的部分变成0,lower_red~upper_red之间的值变成255;三通道彩色图像,则每个通道分别与lowerb、upperb比较,然后按照相同办法修改像素值

    import cv2
    import numpy as np
    
    img = cv2.imread('timg5.jpg')
    
    img2 = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
    cv2.namedWindow('hsv',cv2.WINDOW_NORMAL)
    cv2.namedWindow('hsv1',cv2.WINDOW_NORMAL)
    cv2.namedWindow('hsv2',cv2.WINDOW_NORMAL)
    
    lower_blue = np.array([90, 50, 50])
    upper_blue = np.array([130, 255, 255])
    mask = cv2.inRange(img2, lower_blue, upper_blue)#二值化
    res = cv2.bitwise_and(img2, img2, mask=mask) #按位与
    
    cv2.imshow('hsv',img2)
    cv2.imshow('hsv1',mask)
    cv2.imshow('hsv2',res)
    cv2.waitKey(0)

                       

    3.cv2.bitwise_and(src1, src2, dst=None, mask=None)

    调用时若无mask参数则返回src1 & src2,若存在mask参数,则返回src1 & src2 & mask

    src1:输入原图1
    src2:输入原图2,src1与src2可以相同也可以不相同,可以是灰度图像也可以是彩色图

    dst:若存在参数时:src1 & src2 或者 src1 & src2 & mask
    mask:可以是单通道8bit灰度图像,也可以是矩阵,一般为二值化后的图像



     
  • 相关阅读:
    linux 下面 opcache 拓展
    php中函数前加&符号的作用分解
    apache 设置404页面
    nginx 环境搭建使用之入门
    curl获取http请求的状态码
    js打开新的窗体不被浏览器阻止
    YII 框架使用之——创建应用
    Yii 框架创建自己的 web 应用
    PHP中CURL方法curl_setopt()函数的一些参数
    Linux的学习--使用PuTTY
  • 原文地址:https://www.cnblogs.com/deerfig/p/11335074.html
Copyright © 2011-2022 走看看