CV之FE:基于TF进行FE——去除异常(被损坏)图像 和单通道图像
        【摘要】  CV之FE:基于TF进行FE——去除异常(被损坏)图像 和单通道图像 
  
  
目录 
输出结果 
设计思路 
部分代码实现 
  
  
  
输出结果 
去除了异常(被损坏)图像 、单通道图像 
  
  
设计思路 
1、 
 
  
部分代码实现 
import tensorflow as tffrom glob import globimport os …… ...
    
    
    
    CV之FE:基于TF进行FE——去除异常(被损坏)图像 和单通道图像
目录
输出结果
去除了异常(被损坏)图像 、单通道图像
设计思路
1、

部分代码实现
  
   - 
    
     
    
    
     
      import tensorflow as tf
     
    
- 
    
     
    
    
     
      from glob import glob
     
    
- 
    
     
    
    
     
      import os
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      ……
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      def glob_all(dir_path):
     
    
- 
    
     
    
    
     
       pic_list = glob(os.path.join(dir_path, '*.jpg'))
     
    
- 
    
     
    
    
     
       inside = os.listdir(dir_path)
     
    
- 
    
     
    
    
      for dir_name in inside:
     
    
- 
    
     
    
    
      if os.path.isdir(os.path.join(dir_path, dir_name)):
     
    
- 
    
     
    
    
     
       pic_list.extend(glob_all(os.path.join(dir_path, dir_name)))
     
    
- 
    
     
    
    
      return pic_list
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      def parse_args():
     
    
- 
    
     
    
    
     
       parser = argparse.ArgumentParser()
     
    
- 
    
     
    
    
     
       parser.add_argument('-p', '--dir-path', default='data/')
     
    
- 
    
     
    
    
      return parser.parse_args()
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
      if __name__ == '__main__':
     
    
- 
    
     
    
    
      #1、引入logging模块来记录信息,日志级别为INFO
     
    
- 
    
     
    
    
     
       logging.basicConfig(level=logging.INFO)
     
    
- 
    
     
    
    
      #2、引入argparse模块实现命令行操作
     
    
- 
    
     
    
    
     
       args = parse_args()
     
    
- 
    
     
    
    
      #3、递归取出dir_path下所有jpg文件,包括子文件夹的jpg文件
     
    
- 
    
     
    
    
     
       all_pic_list = glob_all(args.dir_path)
     
    
- 
    
     
    
    
      #4、for循环实现依次删除异常图片(包括损坏、非三通道)
     
    
- 
    
     
    
    
      for i, img_path in enumerate(all_pic_list):
     
    
- 
    
     
    
    
      try:
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
     
       ……
     
    
- 
    
     
    
    
      
     
    
- 
    
     
    
    
      except Exception:
     
    
- 
    
     
    
    
      #检测到异常就删掉图片
     
    
- 
    
     
    
    
     
       logging.warning('%s has broken. Delete it.' % img_path)
     
    
- 
    
     
    
    
      #logging.error(traceback.format_exc())
     
    
- 
    
     
    
    
     
       os.remove(img_path)
     
    
 
文章来源: yunyaniu.blog.csdn.net,作者:一个处女座的程序猿,版权归原作者所有,如需转载,请联系作者。
原文链接:yunyaniu.blog.csdn.net/article/details/82973239
        【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
            cloudbbs@huaweicloud.com
        
        
        
        
        - 点赞
- 收藏
- 关注作者
 
             
           
评论(0)