df26
OpenCV 检测直线
#!coding=utf-8
import cv2 as cv
import numpy as np
#直线检测
img = cv.imread('./1.jpeg')
gray = cv.cvtcolor(img,cv.COLOR_BGR2GRAY)
edges = cv.Canny(gray,50,120)
minlineLength = 20
maxLineGap = 5
lines = cv.HoughLinesP(edges,1,np.pi/180,50,minLineLength,maxLineGap)
for x1,y1,x2,y2 in lines[0]:
cv.line(img,(x1,y1),(x2,y2),(0,100,0),2)
cv.imshow("edges",edges)
cv.imshow("lines",img)
cv.waitKey()
cv.destroyAllwindows()
opencv圆检测
#!coding=utf-8
import cv2 as cv
import numpy as np
planets = cv.imread('5.jpeg')
gray_img = cv.cvtColor(planets,cv.COLOR_BGR2GRAY)
img = cv.medianBlur(gray_img,5)
cimg = cv.cvtColor(img,cv.COLOR_GRAY2BGR)
circles = cv.HoughCircles(img,cv.HOUGH_GRADIENT,1,120,param1=100,param2=30,minRadius=0,maxRadius=0)
circles = np.uint8(np.around(circles))
for i in circles[0,:]:
cv.circle(planets,(i[0],i[1]),i[2],(0,255,0),2)
cv.circle(planets,(i[0],i[1]),2,(0,0,255),3)
cv.imwrite("planets_circles.jpg",planets)
cv.imshow("HoughCirlces",planets)
cv.imwrite('planets.jpeg', planets)
cv.waitKey()
cv.destroyAllWindows()
- Python3.7
- opencv4.0
文章最后发布于: 2019-08-26 14:38:16
相关阅读
opencv 大图(当前页面)找小图(需要点击的地方),主要方法(cv.matchTemplate) import aircv as ac from PIL import ImageGrab import wi
从周五开始学习霍夫曼树,一直到今天终于完成,期间遇到了各种各样的棘手的问题,通过一遍遍在纸上分析每一步的具体状态得以解决。现在
霍夫曼树:每个节点要嘛没有子节点,要么有两个子节点 完全二叉树:满二叉树的一部分或者全部。 满二叉树:每个父亲都有2个叶子。
1. 直线检测1.1. Radon直线检测原理基于Radon变换的直线检测的目的就是检测根据角度变化时出现的“局部峰值”,即可以确定直线的方
#include<iostream> #include<opencv2/opencv.hpp> using namespace std; using namespace cv; int main() { Mat img = imrea