o que foi dito antes
博主今天给大家带来人工智能的一个重要领域的入门操作,opencv包的使用和基本操作,希望大家可以从中学到一些东西!
prefácio
那么这里博主先安利一下一些干货满满的专栏啦!
手撕数据结构https://blog.csdn.net/yu_cblog/category_11490888.html?spm=1001.2014.3001.5482
这里包含了博主很多的数据结构学习上的总结,每一篇都是超级用心编写的,有兴趣的伙伴们都支持一下吧!算法专栏https://blog.csdn.net/yu_cblog/category_11464817.html
Exibição de imagem original
Hoje, o blogueiro usará esta imagem como exemplo para mostrar algumas operações de limite
1. Função de processamento de limite de imagem OpenCV
Protótipo de função:
ret,dst = threshold(src,thresh,maxval,type)
src: imagem de origem
thresh : threshold (127/128 é o nosso limite comumente usado)
maxval: O valor dado quando o pixel excede o limite (menor ou igual ao limite), caso contrário leva 0
ret: Valor de retorno do limite (qual é o limite definido)
dst: imagem de saída
tipo: método de processamento
2. Processamento de Binarização THRESH_BINARY e Inversão de Binarização THRESH_BINARY_INV
Binarização:
Método de processamento: maxval se o valor do pixel do canal exceder o limite e 0 se o valor do pixel do canal for inferior ao limite
def test1():
img = cv2.imread(r"C:\Users\Administrator\Desktop\test4.jpg", 1) # 图片路径
ret,img1=cv2.threshold(img,127,255,cv2.THRESH_BINARY) # 二值化
cv2.imshow('img1',img1)
cv2.waitKey(0)
test1()
resultado do processo:
Inversão de binarização:
Método de processamento: oposto à binarização
def test1():
img = cv2.imread(r"C:\Users\Administrator\Desktop\test5.jpg", 1)
ret,img1=cv2.threshold(img,127,255,cv2.THRESH_BINARY_INV) # 二值化翻转
cv2.imshow('img1',img1)
cv2.waitKey(0)
test1()
resultado do processo:
3. Processamento de THRESH_TRUNC
Trunc na verdade significa truncamento
Método de processamento: se o limite for excedido, o limite é obtido e, se estiver abaixo do limite, o self é obtido.
def test3():
img = cv2.imread(r"C:\Users\Administrator\Desktop\test.jpg", 0)
cv2.imshow('img',img)
# 3.THRESH_TRUNC 超过阈值取阈值,低于阈值取自身
ret,img1=cv2.threshold(img,127,255,cv2.THRESH_TRUNC)
cv2.imshow('img1',img1)
cv2.waitKey(0)
test3()
resultado do processo:
Imagem processada:
Imagem original:
4. Processamento de THRESH_TOZERO e THRESH_TOZERO_INV
Método de processamento:
THRESH_TOZERO: Se ultrapassar o limite, permanecerá inalterado e, se estiver abaixo do limite, será 0
THRESH_TOZERO_INV: Se ultrapassar o limite, será 0, e se estiver abaixo do limite, permanecerá inalterado.
def test4():
img = cv2.imread(r"C:\Users\Administrator\Desktop\test5.jpg", 1)
cv2.imshow('img',img)
# 4.THRESH_TOZERO 超过阈值不变,低于阈值取0
# 5.THRESH_TOZERO_INV 取反 -- 超过阈值取0,低于阈值取不变
ret,img1=cv2.threshold(img,127,255,cv2.THRESH_TOZERO)
ret,img1=cv2.threshold(img,127,255,cv2.THRESH_TOZERO_INV)
cv2.imshow('img1',img1)
cv2.waitKey(0)
print(ret)
test4()
resultado do processo:
THRESH_TOZERO:
Imagem original:
THRESH_TOZERO_INV:
Imagem original:
Resumir
Vendo isso, acredito que todos tenham uma certa compreensão desse conteúdo, certo? Se você sente que este artigo é útil para você, espero que possa continuar prestando atenção, se inscrever na coluna, curtir e colecionar são as maiores motivações para minha criação!
(Por favor, indique o autor e a fonte ao reimprimir. Por favor, não use para fins comerciais sem permissão)
Para mais artigos, visite minha página inicial
@Mochila https://blog.csdn.net/Yu_Cblog?spm=1000.2115.3001.5343