相关疑难解决方法(0)

清理验证码图像

验证码图像

我正在尝试清理上面的图像我已经尝试了几种使用open cv的不同方法,我要么过多地侵蚀原始图像,使得部分字母丢失,如下所示:

通过python opencv 3侵蚀的结果

我不确定如何摆脱最后一条对角线并修复S,到目前为止,我的代码是:

import cv2 
import matplotlib.pylab as plt
img = cv2.imread('/captcha_3blHDdS.png')

#make image gray 
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

#Blur
blur = cv2.GaussianBlur(gray,(5,5),0)
bilateral = cv2.bilateralFilter(gray,5,75,75)

#Thresholding
ret, thresh = cv2.threshold(bilateral,25,255,cv2.THRESH_BINARY_INV+cv2.THRESH_OTSU)

#Kernal
kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (3, 3))

#other things
erosion = cv2.erode(thresh,kernel,iterations = 1)
closing = cv2.morphologyEx(erosion, cv2.MORPH_CLOSE, kernel, iterations = 1)

#Transform image
dist_transform = cv2.distanceTransform(closing,cv2.DIST_L2,5)
ret, sure_fg = cv2.threshold(dist_transform,0.02*dist_transform.max(),255,cv2.THRESH_BINARY)#,255,0)

#kernel_1
kernel_1 = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (1, 2))

dilation_1 = cv2.dilate(sure_fg,kernel_1,iterations = 2)
erosion_1 = cv2.erode(dilation_1,kernel_1,iterations = 3)

plt.imshow(erosion_1, 'gray')
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激,以下是更多从验证码产生的图像类型的例子; 验证码图像的示例

还包含指向包含 …

python captcha opencv image computer-vision

21
推荐指数
3
解决办法
3391
查看次数

如何使用Python中的OpenCV跟踪运动?

我可以使用Python中的OpenCV从我的网络摄像头获取帧.camshift示例接近我想要的,但我不希望人为干预来定义对象.我想获得在几帧的过程中改变的总像素的中心点,即移动物体的中心.

python opencv

15
推荐指数
1
解决办法
4万
查看次数

在实时视频中统计人数

我使用以下代码从早到晚计算实时网络摄像头的人数

people_list = []

while True:
    _, frame = video_capture.read()
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    faces = faceCascade.detectMultiScale(gray, 1.3, 5)

    detections = faceCascade.detectMultiScale(gray, 1.15, 5)

    for i in range(len(detections)):
        face_i = detections[i]
        x, y, w, h = face_i

        cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 222, 0), 1)
        font = cv2.FONT_HERSHEY_SIMPLEX
        people_list.insert(len(people_list)+1,i)

        cv2.putText(frame, "id: "+str ( people_list[i]), (x, y), font, 2, (255, 255, 255), 2, cv2.LINE_AA)

    # Display the resulting frame
    cv2.imshow('Video', frame)
Run Code Online (Sandbox Code Playgroud)

每次检测到新面孔时,people_list计数都会增加.但是,每个帧而不是每个新面都会增加people_list计数.我怎样才能解决这个问题?

python webcam opencv face-detection

6
推荐指数
1
解决办法
2002
查看次数

从python中的BackgroundSubtractorMOG2获取背景模型

我需要使用opencv获得高斯混合的背景模型.我知道在C++中有一个名为getBackgroundImage的方法我搜索了是否可以在python接口中获取它但我没有得到好的结果.我试过opencv 3.0.0-dev因为它有BackgroundSubtractorMOG2实现,但是help()函数没有为背景模型记录方法实现.你知道是否有无证实施?我搜索了如何编辑opencv源来实现python实现,但我还没有找到有关它的文档.我更喜欢避免使用scipy.weave来编译c ++代码,而且我不知道scipy.weave在这种情况下是否有用

python opencv mog

4
推荐指数
2
解决办法
7409
查看次数

标签 统计

opencv ×4

python ×4

captcha ×1

computer-vision ×1

face-detection ×1

image ×1

mog ×1

webcam ×1