我正在为我的学校项目做学生检测。这是我第一次使用OpenCV和Python,使用Python version 3.4.2和opencv3.1.0。

我用的是覆盆子皮黑相机,我得到了很好的图像。

但我不能很好地察觉瞳孔(因为有闪光、睫毛和阴影)。

我在网上引用了一些代码,下面是代码的一部分。...

kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))

# capture frames from the camera

for frame in camera.capture_continuous(rawCapture, format="bgr", use_video_port=True):

image = frame.array

cv2.imshow("image", image)

gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

retval, thresholded = cv2.threshold(gray, 80, 255, 0)

cv2.imshow("threshold", thresholded)

closed = cv2.erode(cv2.dilate(thresholded, kernel, iterations=1), kernel, iterations=1)

#closed = cv2.morphologyEx(close, cv2.MORPH_CLOSE, kernel)

cv2.imshow("closed", closed)

thresholded, contours, hierarchy = cv2.findContours(closed, cv2.RETR_LIST, cv2.CHAIN_APPROX_NONE)

drawing = np.copy(image)

cv2.drawContours(drawing, contours, -1, (255, 0, 0), 2)

for contour in contours:

area = cv2.contourArea(contour)

bounding_box = cv2.boundingRect(contour)

extend = area / (bounding_box[2] * bounding_box[3])

# reject the contours with big extend

if extend > 0.8:

continue

# calculate countour center and draw a dot there

m = cv2.moments(contour)

if m['m00'] != 0:

center = (int(m['m10'] / m['m00']), int(m['m01'] / m['m00']))

cv2.circle(drawing, center, 3, (0, 255, 0), -1)

# fit an ellipse around the contour and draw it into the image

try:

ellipse = cv2.fitEllipse(contour)

cv2.ellipse(drawing, box=ellipse, color=(0, 255, 0))

except:

pass

# show the frame

cv2.imshow("Drawing", drawing)

...

输入图像:

输出图像:

如上图所示,如何去除图像中与瞳孔无关的部分?

除了答案,任何提示也欢迎。

python中opencv怎么检测双眼_OpenCVPython中的瞳孔检测相关推荐

  1. Python使用OpenCV+pillow提取AVI视频中关键帧图像

    问题描述:使用OpenCV把AVI视频切分成静态图像,提取视频中的关键帧,保存为0.jpg.1.jpg.2.jpg....... 实现步骤: 1)安装扩展库 2)准备一个AVI视频,这里以微课系列(5 ...

  2. python中opencv怎么检测双眼_OpenCV/Python/dlib眨眼检测

    摘要: 图像识别的新思路:眼睛纵横比,看看大牛如果用这种思路玩转识别眨眼动作! 今天我们来使用面部标志和OpenCV 检测和计算视频流中的眨眼次数. 为了构建我们的眨眼检测器,我们将计算一个称为眼睛纵 ...

  3. 霍夫变换检测圆c 语言,c++ 霍夫变换检测直线

    通常这是一幅边缘图像,比如来自 Canny算子.cv:: Houghlines函数的输出是 cV::Vec2f向量,每个元素都是一对代表检测到的直线的浮点数(p,0).在下例中 我们首先应用 Cann ...

  4. 使用Python和OpenCV检测图像中的条形码

    使用Python和OpenCV检测图像中的条形码 1. 效果图 2. 算法的步骤 3. 源码 参考 这篇博客将介绍使用计算机视觉和图像处理技术进行条形码检测的必要步骤,并演示使用Python编程语言和 ...

  5. 使用Python,OpenCV和Hough圆检测图像中的圆

    使用Python,OpenCV和Hough圆检测图像中的圆 1. 效果图 2. cv2.HoughCircles(image, method, dp, minDist) 3. 源码 参考 前几篇博客中 ...

  6. 使用Python,OpenCV+OCR检测护照图像中的机器可读区域(MRZ Machine-Readable Zones)

    使用Python,OpenCV+OCR检测护照图像中的机器可读区域(MRZ Machine-Readable Zones) 1. 效果图 2. 原理 3. 源码 参考 这篇博客将介绍如何只使用基本的图 ...

  7. 使用Python和OpenCV检测图像中的物体并将物体裁剪下来

    原文:http://blog.csdn.net/liqiancao/article/details/55670749 硕士阶段的毕设是关于昆虫图像分类的,代码写到一半,上周五导师又给我新的昆虫图片数据 ...

  8. Python+opencv 机器视觉 - 基于霍夫圈变换算法检测图像中的圆形实例演示

    Python+opencv 机器视觉 - 基于霍夫圈变换算法检测图像中的圆形实例演示 第一章:霍夫变换检测圆 ① 实例演示1 ② 实例演示2 ③ 霍夫变换函数解析 第二章:Python + openc ...

  9. python检测屏幕亮点_使用Python和OpenCV检测图像中的多个亮点

    点击上方"蓝色小字"关注我呀 本文来自光头哥哥的博客[Detecting multiple bright spots in an image with Python and Ope ...

最新文章

  1. 5分钟教程,手把手带你安装使用抓包神器:Whistle ,内含精选爬虫资料
  2. 《大数据系统基础》课程实践项目中期答辩顺利举行,清华持续探索大数据人才教育创新之路
  3. ANDROID深度探索(卷1)HAL与驱动开发 第四章
  4. mysql实用工教程_MYSQL实用教程
  5. openssl req
  6. Android thumbnail 图片的获得及与原始图片的映射
  7. matlab zxing ean13,【zxing】Ean13 Contents do not pass checksum
  8. python三层for循环_Python基础入门-For循环
  9. 动态路由之OSPF(开放式最短路径优先协议)
  10. C#语法基础(二)---数组stringArrayList
  11. 图像处理特征提取之(二):Haar特征
  12. centos7 rpm安装时报警 Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY
  13. 小众即时通信工具专项整治启动,关停“比邻”“聊聊”“密语”等9款违法App...
  14. 《量化投资策略如何实现超额收益》简介及PDF电子书下载
  15. 百度搜索开放平台,百度搜索api
  16. 代码本色 processing编程练习
  17. dell笔记本插上耳机没有声音_笔记本扬声器没声音,但耳机有声音怎么办
  18. android图形计算器,Desmos图形计算器
  19. Kubernetes系列(一)基于CentOS8部署Kubernetes1.19集群
  20. html怎样做修改密码的网页,HTML登录界面 html登录界面设置账号密码

热门文章

  1. 操作系统习题知识点总结
  2. 【CQF Finance Class 1 现金时间价值】
  3. Python画柱状统计图
  4. 网口转串口线(console线)制作
  5. 疫情时期的程序员爱情,看完我酸了!
  6. Mac OS X: Mac电脑安全基础
  7. 华为OD机试真题Java实现【射击比赛】真题+解题思路+代码(20222023)
  8. 【华为机试真题 Python】统计射击比赛成绩
  9. web api 、webservice 跨域等
  10. 国产独立游戏之光《风来之国》在Mac和Windows都能玩的买断制像素风小游戏