人脸检测——准备非人脸
2017-07-07 15:15
155 查看
简单粗暴,不多说,直接代码吧:
如果帮到你了,请赞赏支持:
import os import random from PIL import Image from PIL import ImageFile ImageFile.LOAD_TRUNCATED_IMAGES = True import cv2 import numpy as np def random_crop(imagepath): # image = Image.open(imagepath) # len_rand = random.randint(0, min(image.size[0], image.size[1])-1) # x_rand = random.randint(0, image.size[0]-len_rand-1) # y_rand = random.randint(0, image.size[1]-len_rand-1) image = cv2.imread(imagepath) len_rand = random.randint(0, min(image.shape[1], image.shape[0])-1) x_rand = random.randint(0, image.shape[1]-len_rand-1) y_rand = random.randint(0, image.shape[0]-len_rand-1) box = (x_rand, y_rand, x_rand+len_rand, y_rand+len_rand) # return image.crop(box) return image[box[1]:box[3], box[0]:box[2], :] save_dir = 'data_prepare/net_negative' if os.path.exists(save_dir)==False: os.makedirs(save_dir) neg_img_dir = 'imagenet_selected' for file in os.walk(neg_img_dir): filenames = file[2] for idx, filename in enumerate(filenames): filepath = neg_img_dir + '/' + filename for i in range(33): image_crop = random_crop(filepath) savepath = save_dir + '/' + str(i) + filename # image_crop_12 = image_crop.resize((15,15)) if image_crop is None: continue if image_crop.shape[0]<10 and image_crop.shape[1]<10: continue image_crop = cv2.resize(image_crop, (12, 12)) # image_crop_12.save(savepath, 'jpeg') cv2.imwrite(savepath, np.array(image_crop)) print (idx)
如果帮到你了,请赞赏支持:
相关文章推荐
- 人脸检测及识别python实现系列(3)——为模型训练准备人脸数据
- 人脸检测——AFLW准备人脸
- 人脸检测及识别python实现系列(3)——为模型训练准备人脸数据
- 人脸检测源码解析——3、准备数据
- 肤色检测&人脸检测数据集等链接大集合(持续更新中...)
- opencv的haarcascade模型人脸检测输出框的得分总结
- 接深度学习,opencv人脸识别,目标检测等项目
- 基于Android原生 带人脸检测的相机预览组件
- Android实战技巧之三十:人脸检测-静态
- 利用opencv实现人脸检测(C++版)
- 【模式识别】PCA检测人脸的简单示例MATLAB实现
- 人脸检测及识别python实现系列(6)——终篇:从实时视频流识别出“我”
- 人脸检测和识别
- 浅析人脸检测之Haar分类器方法:Haar特征、积分图、 AdaBoost 、级联
- face++人脸检测(三)搜索
- Android API教程:人脸检测(上)
- 人脸检测和识别通用API和库
- dlib系列-人脸检测
- AdaBoost人脸检测算法1(转…
- 人脸特征点定位与检测