首页 > 其他分享 >3、openCV 平均图像的颜色

3、openCV 平均图像的颜色

时间:2022-09-28 11:03:41浏览次数:53  
标签:颜色 img color average openCV weights 图像 np pixel


# -*- coding: utf-8 -*-
import cv2, matplotlib
import numpy as np
import matplotlib.pyplot as plt
pixel=cv2.imread('2.jpg')
print 'pixel=',pixel
average_img = np.average(pixel, axis=0)
print 'average_img=',average_img
average_img_weights = np.average(pixel, axis=0,weights=[1./4,2,2]) # pixel 3X3
print 'average_img_weights=',average_img_weights
average_color = np.average(average_img, axis=0)
average_color = np.uint8(average_color)
print 'average_color=',average_color
average_color_img = np.array([[average_color]*500]*500, np.uint8)
cv2.imshow('average',average_color_img)
cv2.imwrite('avarage.jpg',average_color_img)
cv2.waitKey(0)

函数原型为:average(a, axis =None, weights=None) : 依给定轴axis计算数组a相关元素的加权平均值 

np.average() 对于3X3的矩阵是各个行列相应位置元素平均值计算;见下图

3、openCV 平均图像的颜色_权值

截图一块小图片,其像素描述:

pixel= [
[[ 6 15 29] [ 13 22 36] [104 114 131]]
[[ 12 21 35] [ 42 51 65] [164 174 191]]
[[ 0 0 11] [ 14 23 37] [142 152 169]]
]

执行python 代码可知

average_img= [[   6.           12.           25.        ]
[ 23. 32. 46. ]
[ 136.66666667 146.66666667 163.66666667]]
average_img_weights= [[ 6. 10.76470588 23.35294118]
[ 27.11764706 36.11764706 50.11764706]
[ 150.11764706 160.11764706 177.11764706]]
average_color= [55 63 78]
计算过程可见 pixel ==>>average_img  未加权值参数weights

6=(6+12+0)/3
23=(13+42+14)/3
........
计算过程可见 pixel ==>>average_img 加权值参数weights
暂未看懂。。。。。 看懂小伙伴给我留言

3、openCV 平均图像的颜色_python_02

关于axis描述:

3、openCV 平均图像的颜色_python_03

标签:颜色,img,color,average,openCV,weights,图像,np,pixel
From: https://blog.51cto.com/u_12504263/5718747

相关文章

  • 13、OpenCV4.4 仿射变换
    Parameters:src–Coordinatesoftriangleverticesinthesourceimage.dst–Coordinatesofthecorrespondingtriangleverticesinthedestinationimage.Thefunc......
  • 9、OpenCV4.4 色彩抽出
    色彩的空间变换#-*-coding:utf-8-*-importcv2importnumpyasnporiginal=cv2.imread('1.jpg',1)img=original.copy()#副本dst=np.zeros(img.shape,np.uint8)#......
  • jetbrain 相关颜色修改
    1.修改方法分割线颜色-一般用#9C9C9C2.左侧导航线颜色-一般用#9C9C9C......
  • [cmake wrong]wsl opencv
    [root@DESKTOP-31LJ6LM~/g101/h1/build]$cmake..--OpenCVARCH:--OpenCVRUNTIME:--OpenCVSTATIC:OFFCMakeWarningat/mnt/e/DevelopeTools/opencv/opencv/......
  • imageIO图像流 验证码效果案例
    packagecn.images;importjavax.imageio.ImageIO;importjava.awt.*;importjava.awt.image.BufferedImage;importjava.io.File;importjava.util.Random;publicclassCa......
  • Python cv2(Opencv) Canny边缘检测 和 傅里叶变换
    OpenCV是一个基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和MacOS操作系统上。它轻量级而且高效,由一系列C函数和少......
  • 图像轮廓的检测
    importcv2importmatplotlib.pyplotaspltimage=cv2.imread("qqhuman.jpeg")image_BGR=image.copy()#将图像转换成灰度图像,并执行图像高斯模糊,以及转化成二值图像......
  • 关于python的opencv库的学习笔记,腐蚀与膨胀
    importcv2importnumpyasnp##img=cv2.imread('cat.jpeg')##cv2.imshow('cat',img)##cv2.waitKey()##cv2.destroyAllWindows()##对图像进行腐蚀操作#ken=np.ones......
  • opencv学习笔记,关于图片的平滑处理
    在opencv的图像平滑处理,有高斯滤波,中值滤波,均值滤波的处理方法importcv2importnumpyasapimportmatplotlib.pyplotaspltimg=cv2.imread('cat.jpeg')cv2.imshow('cat......
  • Brush Bundle一键创建精美图像PS笔刷包
    BrushBundle是一款可以在几秒钟内创建灯笼、萤火虫、剪影、瀑布、银河、头发、草、毛皮、北极光、雾、云等等的笔刷,使用简单方便。BrushBundle是中文笔刷。独特、有趣......