【杂记】机器视觉 #opencv #numpy #matplotlib

1、开运算

开运算就是先腐蚀再膨胀的去除噪点活动


2、设置掩膜的时候,bgr转hsv用到的inRange里的上下限范围要用到ndarray格式


3、opencv读取颜色并非RGB而是BGR格式,必要时要转义

python 复制代码
import cv2
import numpy as np
import matplotlib.pyplot as plt

img=cv2.imread('san2.jpg')
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

img_r =np.zeros_like(img)
img_g =np.zeros_like(img)
img_b =np.zeros_like(img)


R=img[:,:,0]
G=img[:,:,1]
B=img[:,:,2]

img_r[:,:,0]=R
img_g[:,:,1]=G
img_b[:,:,2]=B

plt.subplot(232)
plt.imshow(img)
plt.subplot(234)
plt.imshow(img_r)
plt.subplot(235)
plt.imshow(img_g)
plt.subplot(236)
plt.imshow(img_b)
plt.show()

4、计算机识别图片的坐标是横向x,纵向y(下为正方向),和三维数组的表示不同,三维数组的axis=0为纵向,1为横向

案例


5、二值化的threshold函数在调用时返回值有两个要注意,一个是阈值一个是图片的多维数组


6、框选图片区域获取颜色并且显示字体,putText函数

python 复制代码
import cv2


img=cv2.imread('./win.png')

x,y,w,h=cv2.selectROI('1',img)
m=img[y:y+h,x:x+w]
img_blur=cv2.GaussianBlur(m,(5,5),0)

img_hsv=cv2.cvtColor(img_blur,cv2.COLOR_BGR2HSV)

colors=[]


yellow_count = blue_count = green_count =white_count=0
for i in range(h):
    for j in range(w):
        H,S,V=img_hsv[i,j]
        if 11<=H<=34 and S>43:
            yellow_count+=1
        elif 35<=H<=99 and S>43:
            green_count+=1
        elif 100<=H<=124 and S>43:
            blue_count+=1
        elif 0<=H<=180 and S<30:
            white_count+=1
color='no'
if yellow_count*2>=w*h:
    color='yellow'
elif green_count*2>=w*h:
    color='green'
elif blue_count*2>=w*h:
    color='blue'
elif white_count*2>=w*h:
    color='white'

img_t=cv2.putText(
    m,
    color,
    (h//3,w//3),
    cv2.FONT_HERSHEY_SIMPLEX,
    1.5,
    (0,0,0),
    2
)


cv2.imshow('0',img_t)
cv2.waitKey(0)

相关推荐
To_OC20 小时前
大模型蒸馏是啥?说白了就是大厨带徒弟的学问
人工智能·llm·agent
新手来了@click20 小时前
JAVA+AI 简化开发操作|文章被 AI Agent 技术社区收录分享
人工智能
GuWenyue21 小时前
Cursor黑盒拆解!1套LangChain.js手写Mini编程Agent,自动生成React项目,效率提升60%
前端·数据库·人工智能
GuWenyue21 小时前
传统Agent工具两大痛点!300行代码落地MCP跨语言工具,彻底解耦LLM与工具
前端·人工智能·算法
老云讲算力市场21 小时前
WAIC首日观察:国产算力与机器人加速落地,奇点算力迎来产业新机遇
人工智能·科技
糖果店的幽灵21 小时前
【DeepAgents 从入门到精通】Context Management 上下文管理
java·人工智能·后端·spring·中间件·langgraph·deepagents
小林ixn21 小时前
大模型随机说话的秘密:Temperature 和 Top K 深度解析,LangChain 实战调优
人工智能·langchain
ALINX技术博客21 小时前
ALINX 亮相 2026 WAIC 世界人工智能大会,展示 AI 视觉 FPGA+GPU 异构计算与电子后视镜解决方案
人工智能·ai·fpga·世界人工智能大会·电子后视镜
程序员老猫1 天前
当 AI 能写 80% 的代码时,后端工程师的核心价值还剩什么?
人工智能
想会飞的蒲公英1 天前
计算机怎样读取中文文本:编码、清洗与标准化
人工智能·python·自然语言处理