datasets.py 文件源码

python
阅读 31 收藏 0 点赞 0 评论 0

项目:Cascade-CNN-Face-Detection 作者: gogolgrind 项目源码 文件源码
def get_train_face_wider_data(k = 12,write_to_disk = False):
        '''
        cut faces (positive examples) by bboxes from all images in  dataset
        return X - features
               y - labels
               cnt - count of examples
        '''
        X,y = [],[]
        root = 'F:\\Datasets\\image_data_sets\\faces\\WIDERFace\\'
        pattern = "*.jpg"

        bboxs = Datasets.load_wider_face(os.path.join(root,'wider_face_split','wider_face_train_v7.mat'))
        for path, subdirs, files in os.walk(root,'WIDER_train'):
            for indx,iname in enumerate(files):
                if fnmatch(iname, pattern):
                    ipath = os.path.join(path, iname)
                    print('face:',ipath)
                    img = fr.get_frame(ipath)
                    H,W,dim =  img.shape
                    bbox_list = bboxs[iname[:-4]]
                    for bbox in bbox_list:
                        face = fr.get_patch(img,bbox[1],bbox[0],(bbox[2],bbox[3]))
                        #fr.write_frame('F:\\1\\' + str(c),face)

                        face_r,good_example = Datasets.sample_resize(face,k,k)

                        if good_example:

                            vec = fr.frame_to_vect(face_r)
                            X.append(vec)
                            y.append(1)

                            face_r_flip = fr.flip_frame(face_r)
                            vec = fr.frame_to_vect(face_r_flip)                            
                            X.append(vec)
                            y.append(1)

        X = sp.array(X)
        y = sp.array(y)
        #y = sp.ones(len(X))                    
        return X,y
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号