首页 > 其他分享 >cv2.threshold阈值相关用法说明

cv2.threshold阈值相关用法说明

时间:2023-08-26 15:45:29浏览次数:38  
标签:gray img 阈值 cv2 用法说明 THRESH threshold

ret, dst = cv2.threshold(src, thresh, maxval, type)

src:输入图,只能输入单通道图像,通常来说为灰度图
dst:输出图
thresh:阈值
maxval:当像素值超过了阈值(或者小于阈值,根据type来决定),所赋予的值
type:二值化操作的类型,就是怎么处理阈值,包含以下5种类型:cv2.THRESH_BINARY;cv2.THRESH_BINARY_INV;cv2.THRESH_TRUNC;cv2.THRESH_TOZERO;cv2.THRESH_TOZERO_INV;

cv2.THRESH_BINARY 超过阈值部分取maxval(最大值),否则取0

cv2.THRESH_BINARY_INV THRESH_BINARY的反转

cv2.THRESH_TRUNC 大于阈值部分设为阈值,否则不变

cv2.THRESH_TOZERO 大于阈值部分不改变,否则设为0

cv2.THRESH_TOZERO_INV THRESH_TOZERO的反转

import cv2
import matplotlib.pyplot as plt
img = cv2.imread('cat.jpg')
img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cv2.imshow('img_gray)', img_gray)
ret1, thresh1 = cv2.threshold(img_gray, 127, 255, cv2.THRESH_BINARY)
ret2, thresh2 = cv2.threshold(img_gray, 127, 255, cv2.THRESH_BINARY_INV)
ret3, thresh3 = cv2.threshold(img_gray, 127, 255, cv2.THRESH_TRUNC)
ret4, thresh4 = cv2.threshold(img_gray, 127, 255, cv2.THRESH_TOZERO)
ret5, thresh5 = cv2.threshold(img_gray, 127, 255, cv2.THRESH_TOZERO_INV)

 

标签:gray,img,阈值,cv2,用法说明,THRESH,threshold
From: https://www.cnblogs.com/zhml/p/17658866.html

相关文章

  • 高性能网络 SIG 月度动态:ANCK 首次支持 SMCv2.1,virtio 规范支持隧道报文内头部哈希
    高性能网络SIG(SpecialInterestGroup) :在云计算时代,软硬件高速发展,云原生、微服务等新的应用形态兴起,让更多的数据在进程之间流动,而网络则成为了这些数据流的载体,在整个云时代扮演着前所未有的重要角色。在这个万物互联的时代,云上的网络通信效率对各种服务至关重要,高性能网络兴趣......
  • python pycharm interpreter import cv2
     在安装opencv-python,在cmd输入python,importcv2正常,在pycharm中importcv2即显示ModuleNotFoundError:Nomodulenamed'cv2',解决方法:在pycharm——file——setting——project:objname(当前项目名称)——python interpreter中选择anaconda安装目录下的python.e......
  • OpenCV笔记:cv2.VideoCapture 完成视频的跳帧输出操作
    前言 我开始关注这个问题,是在使用PaddleOCR+OpenCV进行视频文字识别的时候,因为OpenCV需要循环读取视频的每一帧进行解析,这就导致视频播放特别卡顿。由于视频中相邻帧的内容是一样的,重复识别也没有意义,所以我就在考虑:有没有办法跳帧输出?来源:https://blog.csdn.net/weixin_4425......
  • ECCV2022 Real-RawVSR Dataset (Tianjin University)
    1.摘要近些年superresolution(SR)取得了很大进步,图像的SR真实世界数据集也有很多,相比来说视频要落后很多。本文构建了第一个真实世界的RAW视频SR数据集。数据集中包含450对RAW视频,LR图像有对应的2x/3x/4x的HR图像。本文提出一个两分支网络,分别处理packedRGGB序列和BayerRAW序列......
  • ModuleNotFoundError: No module named 'cv2'
    前言运行python3req.py文件时遇到:ModuleNotFoundError:Nomodulenamed'cv2'原因是:环境中缺少cv2的包,所以会出现Nomodulenamed'cv2’的问题。cv2的包名并不叫cv2,所以使用pipinstallcv2不能安装。cv2的包名叫opencv-python,使用以下命令即可解决:pip3i......
  • Exception: Not found: 'python/cv2/py.typed'
    CopyingfilesfromCMakeoutputcreatingdirectory_skbuild/linux-x86_64-3.6/cmake-install/cv2copying_skbuild/linux-x86_64-3.6/cmake-install/python/cv2/python-3/cv2.abi3.so->_skbuild/linux-x86_64-3.6/cmake-install/cv2/cv2.abi3.socopying_skbuild/linu......
  • cv2 undefined symbol: g_date_copy (or qt.qpa.plugin: Could not load..)解决
    cv2undefinedsymbol:g_date_copyorqt.qpa.plugin:Couldnotload问题背景:这次就是想用Qt5在Ubuntu上做一个GUI,结果一运行就报这个:QObject::moveToThread:Currentthread(0x7fc0f7435300)isnottheobject’sthread(0x7fc0f9f02cc0).Cannotmovetotargetthread(0x7......
  • OEM报错"Compliance score 51% is below critical threshold"
     OEM报错"Compliancescore51%isbelowcriticalthreshold" 具体邮件报警如下:点击链接,打开oem网页端,点击“查看相容性标准结果”: 选中其中一个安全建议,可以看到下边一般信息中建议打上安全补丁31720783,该补丁是linux版本的OracleDB最后一个PSU补丁(11.2.0.4.201020......
  • 使用ORBSLAM2进行kineticV2稠密建图,实时转octomap建图以及导航
    决定总结最近一个月的工作,这个月在orbslam2的基础上,使用kineticV2完成了稠密点云地图的重建,实现了点云的回环,并使用octomap转换成实时的八叉树地图,导航部分已经有了思路,打算下个月所一个基于octomap的航迹生成能用在视觉的导航上。一、传感器和依赖包安装PC性能:Dellxps13内存16GB......
  • [LeetCode] 1343. Number of Sub-arrays of Size K and Average Greater than or Equa
    Givenanarrayofintegers arr andtwointegers k and threshold,return *thenumberofsub-arraysofsize k andaveragegreaterthanorequalto *threshold.Example1:Input:arr=[2,2,2,2,5,5,5,8],k=3,threshold=4Output:3Explanation:Sub-a......