zoukankan      html  css  js  c++  java
  • 4-4 算法优化

    # 1 灰度 最重要 2 基础 3 实时性
    # 定点-》浮点 +- */ >>
    # r*0.299+g*0.587+b*0.114
    
    import cv2
    import numpy as np
    img = cv2.imread('image0.jpg',1)
    imgInfo = img.shape
    height = imgInfo[0]
    width = imgInfo[1]
    # RGB R=G=B = gray (R+G+B)/3
    dst = np.zeros((height,width,3),np.uint8)
    for i in range(0,height):
        for j in range(0,width):
            (b,g,r) = img[i,j]
             # 浮点转定点
            b = int(b)
            g = int(g)
            r = int(r)
            gray = (r*1+g*2+b*1)/4
             #gray = (int(b)+int(g)+int(r))/3
            dst[i,j] = np.uint8(gray)
    cv2.imshow('dst',dst)
    cv2.waitKey(0)

    # 1 灰度 最重要 2 基础 3 实时性
    # 定点-》浮点 +- */ >>
    # r*0.299+g*0.587+b*0.114
    
    import cv2
    import numpy as np
    img = cv2.imread('image0.jpg',1)
    imgInfo = img.shape
    height = imgInfo[0]
    width = imgInfo[1]
    # RGB R=G=B = gray (R+G+B)/3
    dst = np.zeros((height,width,3),np.uint8)
    for i in range(0,height):
        for j in range(0,width):
            (b,g,r) = img[i,j]
             # 浮点转定点
            b = int(b)
            g = int(g)
            r = int(r)
            #gray = (r*1+g*2+b*1)/4
            gray = (int(b)+int(g)+int(r))/3
            dst[i,j] = np.uint8(gray)
    cv2.imshow('dst',dst)
    cv2.waitKey(0)

    # 1 灰度 最重要 2 基础 3 实时性
    # 定点-》浮点 +- */ >>
    # r*0.299+g*0.587+b*0.114
    
    import cv2
    import numpy as np
    img = cv2.imread('image0.jpg',1)
    imgInfo = img.shape
    height = imgInfo[0]
    width = imgInfo[1]
    # RGB R=G=B = gray (R+G+B)/3
    dst = np.zeros((height,width,3),np.uint8)
    for i in range(0,height):
        for j in range(0,width):
            (b,g,r) = img[i,j]
             # 浮点转定点
            b = int(b)
            g = int(g)
            r = int(r)
            #gray = (r*1+g*2+b*1)/4
            # 定点转移位
            gray = (r+(g<<1)+b)>>2
            #gray = (int(b)+int(g)+int(r))/3
            dst[i,j] = np.uint8(gray)
    cv2.imshow('dst',dst)
    cv2.waitKey(0)
    # 1 灰度 最重要 2 基础 3 实时性
    # 定点-》浮点 +- */ >>
    # r*0.299+g*0.587+b*0.114
    # 100 1000 10000
    import cv2
    import numpy as np
    img = cv2.imread('image0.jpg',1)
    imgInfo = img.shape
    height = imgInfo[0]
    width = imgInfo[1]
    # RGB R=G=B = gray (R+G+B)/3
    dst = np.zeros((height,width,3),np.uint8)
    for i in range(0,height):
        for j in range(0,width):
            (b,g,r) = img[i,j]
             # 浮点转定点
            b = int(b)
            g = int(g)
            r = int(r)
            #gray = (r*1+g*2+b*1)/4
            # 定点转移位
            gray = (r+(g<<1)+b)>>2
            #gray = (int(b)+int(g)+int(r))/3
            dst[i,j] = np.uint8(gray)
    cv2.imshow('dst',dst)
    cv2.waitKey(0)
  • 相关阅读:
    android ContentObserver
    3 个简单、优秀的 Linux 网络监视器
    使用 sar 和 kSar 来发现 Linux 性能瓶颈
    4 个拥有绝佳命令行界面的终端程序
    4 个用于构建优秀的命令行用户界面的 Python 库
    理解 Linux 的平均负载和性能监控
    安装matplotlib
    面向系统管理员的网络管理指南
    使用 Nmon 监控 Linux 的系统性能
    linux smem 查看各进程使用memory情况
  • 原文地址:https://www.cnblogs.com/ZHONGZHENHUA/p/9689171.html
Copyright © 2011-2022 走看看