范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

保护女神林志玲,给脸打马赛克pythonopencv实现

  1 说明:
  =====
  1.1 python+opencv实现人脸定位、马赛克采用2种方法:dlib法和cv2自带xml法。
  1.2 cv2自带xml法:加载人脸模型haarcascade_frontalface_default.xml
  1.3 图片来源:来自今日头条正版免费图库,向女神致敬,仅供学习。
  pic1:林志玲
  pic2:林志玲等3人
  2 加载opencv的xml模型法:有bug,此处省略。https://github.com/opencv/opencv/blob/master/data/haarcascades/haarcascade_frontalface_default.xml #下载
  3 dlib法:
  ======
  3.1 安装dlib:pip install dlib
  3.2 效果图:
  4 代码:
  python的代码简洁,清晰,规范化的步骤
  ===============================
  4.1 第1步:模块导入# 导入模块 import dlib import cv2
  4.2 第2步:函数定义# 获得人脸矩形的坐标信息 def rect_to_fb(face):     x = face.left()     y = face.top()     w = face.right() - x     h = face.bottom() - y     return (x, y, w, h)  # 将待检测的image进行resize,调整大小 def resize(image, width=1200):       r = width * 1.0 / image.shape[1]     dim = (width, int(image.shape[0] * r))     resized = cv2.resize(image, dim, interpolation=cv2.INTER_AREA)     return resized  # 定义人脸马赛克=face_mosaic函数: def face_mosaic(image, x, y, w, h, m1w=9):    """   :param img: opencv img   :param int x : 马赛克左顶点   :param int y: 马赛克右顶点   :param int w: 马赛克宽   :param int h: 马赛克高   :param int m1w: 马赛克每一块的宽:mosaic 1 w   """   # 获取读取图片的高和宽   img_h, img_w = image.shape[0], image.shape[1]   # 当判断超过边界,返回   if (y + h > img_h) or (x + w > img_w):     return    # h==高:关键点0 减去m1w防止溢出   for i in range(0, h - m1w, m1w):      # w==宽:关键点0 减去m1w防止溢出     for j in range(0, w - m1w, m1w):       # 获得人脸矩形的坐标信息       rect = [j + x, i + y, m1w, m1w]       # numpy中ndarray文件转为list       color = image[i + y][j + x].tolist() # 关键点1 tolist       # 获取对角线       left_up = (rect[0], rect[1])       # 关键点2 减去一个像素       right_down = (rect[0] + m1w - 1, rect[1] + m1w - 1)        # 确定对角线 来画矩形的       # 比如:       # cv2.rectangle(img, (bbox.left, bbox.top), (bbox.right, bbox.bottom), (0,0,255), 2)       # 注意上面是2=小绿色框,1=部分小绿色宽,-1=无色马赛克,不显示绿色框       cv2.rectangle(image, left_up, right_down, color, -1)
  4.3 第3步:main主函数# 人脸侦测,定位,打马赛克 def main():     # 读取原始图片     image_file = "/home/xgj/Desktop/masaike/pic2.jpeg"     image = cv2.imread(image_file)     # 调用函数,调整图片大小     image = resize(image, width=1200)          # 调用dlib的函数获取人脸模型     detector = dlib.get_frontal_face_detector()     # 获取人脸数据     faces = detector(image, 1)      for (i, face) in enumerate(faces):         (x, y, w, h) = rect_to_fb(face)         # 人脸定位并加绿色矩形框         cv2.rectangle(image, (x, y), (x + w, y + h), (0, 255, 0), 2)         # cv2.putText(I,"there 0 error(s):",(50,150),cv2.FONT_HERSHEY_COMPLEX,6,(0,0,255),25)         # 各参数依次是:照片/添加的文字/左上角坐标/字体/字体大小/颜色/字体粗细         cv2.putText(image, "Face:{}".format(i+1), (x - 10, y - 10),cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)         # 调用马赛克函数,打马赛克         face_mosaic(image, x, y, w, h)          # 显示效果图片     cv2.imshow("Output", image)     cv2.waitKey(0) #永不自动关闭
  4.4 第4步:结尾if __name__ == "__main__":     main()
  5 小结:
  =====
  5.1 dlib法基本无bug,显示了dlib库在人脸识别和定位上的强大。
  5.2 同时在使用OpenCV的自带人脸识别模型xml时出现上述2张照片bug,所以放弃使用,希望OpenCV这个强大的库能改进。 当然OpenCV还是一个很强大,很热门的计算机视觉库。
  5.3 python代码规范的问题:要不要结尾if __name__ == "__main__":问题,好像python3中也不重要了,自己可以感受一下。
  5.4 以上是个人心得,分享出来。

农村留守妇女农闲之时必做的两件事,现如今一个消失,另一个成了在农村,留守妇女已然成为了农业生产发展的主力,她们的时间安排会出现两个极端,即忙的时候,早起晚归闲的时候,无所事事。忙,当然是农忙,整地播种施肥浇水收获等等。而闲暇的时间,留守妇女3年获利超5000元,农村种植这个东西很值得是的,作为一个农村人,在外漂泊久了,总会有回家创业的想法。然而,当要决定发展什么项目的时候,却迟迟找不到合适的农业项目。作为一个南方人,在此分享一下个人的看法。种植甘草前景广阔甘草英国一年一度的赛马在安翠赛马场举行,黑马杀出夺得冠军赛马是英国一年一度的大事,就跟足球比赛一样,给人的感觉是精彩刺激的。2018年4月12日,在英国有名的安翠赛马场举行了一场全国瞩目的比赛,吸引了来自四面八方的赛马粉丝。这三位女性,中华田园犬最丢人的三个时刻中华田园犬,也有丢人的时候,让主人既尴尬又好笑。其实,对我来说,田园犬不是宠物而是伙伴,它出丑了,我以主人的身份表示尴尬,又以伙伴的身份,感到好笑。为啥?请看下面三点令人尴尬的场面甘蔗幼苗生长受4大因素影响,采取41管护措施可保顺利度过幼苗期今天,村里拉来了一车子的甘蔗种子,大家伙儿卸下甘蔗之后就忙活起来了,把长长的甘蔗砍成小段,装入箩筐里面,准备拿去下种种植。播种在当前,可咱们想到的却是幼苗期的管理问题,这可是挺关键实用性很强!抓好甘蔗伸长期,你也能够打造属于自己的高产田蔗农辛苦一年,都希望在冬季收获的时候,亩产量能够高一些,收入就能够多一些。高产是蔗农种植的一大目标,但心理想着却不知道如何操作,每年的管理方式依旧,产量没有起色。要想改变现状,这里农村的这些变化,可能你还没有意识到!沿海发达城市的发展,确实吸引了不少的农村劳动力进城务工。但是,在农村还是有人致力于农业的种植,而且种植技术种植结构和种植思维已经悄然改变。这里,我们单独谈谈以家庭为单位的农村种植结我姐给我爸介绍了一个女朋友,她隐藏的秘密,都被我发现了原创插图喵喵夏,讲述小蕊,女,27岁上期故事您看了吗?点击阅读暗恋她15年,见到她父母我慌了,原来是自己不配01hr三年前,妈妈在买菜途中因车祸猝然离世。我和姐姐,包括爸爸都没能见老公是宠妻狂魔,直到有个男人来告密,才发现我们都有病原创插图喵喵夏,讲述许雯雯,女,29岁01hr人们常说,初恋时,我们不懂爱情。可是,究竟要带着怎样的自己,走向下一任?我也曾恨恨地对自己说下一次恋爱,绝不再像从前那么傻。后来遇见他口述父母离婚后,我才发现,我不像爸也不像妈,像那个男人原创插图喵喵夏,讲述刚子,男,30岁01hr经常有人问我刚子,你的性格既不像爸,也不像妈,到底随了谁?随我舅。这是我的回答。娘亲舅大这句话,我打小就在听。但真正弄懂这句话,已经是而老公远嫁投奔我,结婚后才发现,他是这样一个男人原创插图喵喵夏,讲述苏眉,女,32岁01hr我和何涛是通过交友软件认识的。那时候,爸妈夺命催婚。于是,我抱着有枣没枣打一杆子的态度,认识了何涛。交友软件里,各种奇葩层出不穷,何涛是
情感咨询栗子姐每日情感问答(0603)咨询栗子姐您好,我觉得我有心理疾病,我总是控制不住自己的情绪,每次有不顺心的事的时候总是想的很极端,和别人有什么冲突的时候会想着杀了对方,事后我自己也很害怕自己有这种想法,我是不是情感咨询栗子姐每日情感问答(0610)咨询我和男朋友都是25岁,在一起六年多了,我本科毕业两年,在县城工作收入稳定,月薪除去五险一金六七千吧。男朋友三年前大专毕业,一会想做这个,一会想做那个,到现在还什么都没做成。最近情感咨询栗子姐每日情感问答(0612)咨询老师好,我是男的,我非常喜欢的一个女生是同性恋怎么办?栗子姐点评你是异性恋,喜欢上一个同性恋的姑娘,还能怎么办?凉拌呗!!因为这姑娘她就不喜欢男人,这和你也不喜欢男人是一个道理86万彩礼返还案与郎咸平和小三的争产大战恋爱两年分手后,男方起诉女方返还恋爱期间花费的86万财物的事件,在网上闹的沸沸扬扬。其实很多人并不知道这件事情的真相,今天栗子姐就给大家讲一讲。话说两年前26岁的山东姑娘徐小姐,遇情感咨询栗子姐每日情感问答(0602)咨询在前不久添加了一个女孩儿。想和她真的谈一场轰轰烈烈的爱情。直到走到最后。但是她一开始就给我要钱。毕竟,我们两个连面都没有见过。关系也没有确定。这个怎么办?栗子姐点评也不知道你是情感咨询栗子姐每日情感问答(0604)咨询马xx,这是我最后一次这样叫你那么多年我从来没有做过一件对不起你的事情,你说过你要什么样的女人都可以有,那我跟你说我要什么样的男人我也都可以有,但是我从来没有和你这样说过,因为情感咨询栗子姐每日情感问答(0607)咨询相亲认识一男的,刚开始对我特别热情追的特别紧,还没见面看了照片就特别满意那种,每天都发信息视频,后来见了面,我也没有很快回应他,因为毕竟离婚过一次,不想那么快确定关系,过了差不情感咨询栗子姐每日情感问答(0530)咨询男朋友家领养一个妹妹和男朋友一起长大的,她也知道自己是领养的,还跟我男朋友家要买房子,还买东西讨好男朋友爸妈,我应该继续吗?栗子姐点评法律上规定,私生子领养的孩子与婚生子女有同情感咨询栗子姐每日情感问答(0531)咨询为什么我一个男人总是忘不了心爱的女人,我们刚刚分开了,是她先提出不在一起,之前我们很好的没有任何杂质在中间很纯粹的感情,但大概半年前她开始想离开,特别是这次疫情后她明确和我提出情感咨询栗子姐每日情感问答(0705)咨询我和老公都是二婚,我有个8岁儿子,他有个13岁儿子,我们15年谈恋爱,中间分分合合,去年5月终于结婚,过了大半年,我们就因为琐事分居到现在,我知道婚姻的维系需要各方面的因素,我微信情感咨询栗子姐每日情感问答(0630)咨询我想问怎样可以让我们的婚姻更好,我老公是去我们家的,然后我们买房子我老公也出了一大部分,现在老人来给我们接送孩子上学,我老公老是感觉不自由,感觉压抑,觉得我家庭气氛不好,我爸爸