data_processing.py 文件源码

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

项目:Vehicle-identification 作者: soloice 项目源码 文件源码
def equalize_hist_all(self, root='../data/val/'):
        raw_root, out_root = root + 'images/', root + 'normalized/'
        if not os.path.exists(out_root):
            os.mkdir(out_root)
        cnt = 0
        for parent, _, files in os.walk(raw_root):
            for name in files:
                img = cv2.imread(parent + name)
                b, g, r = cv2.split(img)
                bb, gg, rr = cv2.equalizeHist(b), cv2.equalizeHist(g), cv2.equalizeHist(r)
                [row, col] = b.shape

                if row > col:
                    d = row - col
                    add_block = np.zeros((d, row))
                    new_bb = np.vstack((bb.T, add_block))
                    new_gg = np.vstack((gg.T, add_block))
                    new_rr = np.vstack((rr.T, add_block))
                    new_bb = new_bb.T
                    new_gg = new_gg.T
                    new_rr = new_rr.T
                else:
                    d = col - row
                    add_block = np.zeros((d, col))
                    new_bb = np.vstack((add_block, bb))
                    new_gg = np.vstack((add_block, gg))
                    new_rr = np.vstack((add_block, rr))

                new_bb, new_gg, new_rr = np.uint8(new_bb), np.uint8(new_gg), np.uint8(new_rr)
                new_image = cv2.merge([new_bb, new_gg, new_rr])

                res = cv2.resize(new_image, (100, 100), interpolation=cv2.INTER_CUBIC)
                new_name = out_root + name
                cv2.imwrite(new_name, res)
                cnt += 1
                if cnt % 500 == 0:
                    print 'Processed', cnt, 'images!'
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号