python内存分析

处理图片内存溢出问题

1.第一次分析,没有主动del图片对象 ,对应分析表中左图

python 复制代码
@profile
def my_function():    
    i = 0
    for img in line_img_list:
        i+=1
        print(i)
        img_stream = minio.download_file("line", img)
        if img_stream is None:
            print("有问题的图片:", img)
            continue
        # 格式化数据流
        cv_image = cv2.imdecode(np.frombuffer(img_stream, dtype=np.uint8), -1)
        if cv_image is None:
            continue
        img_stream = cv2.imencode('.jpg', cv_image)[1]  # 编码图片
        image_obj = BytesIO(img_stream)
  

1.第二次分析,主动del图片对象 ,对应分析结果右图

python 复制代码
@profile
def my_function():    
    i = 0
    for img in line_img_list:
        i+=1
        print(i)
        img_stream = minio.download_file("line", img)
        if img_stream is None:
            print("有问题的图片:", img)
            continue
        # 格式化数据流
        cv_image = cv2.imdecode(np.frombuffer(img_stream, dtype=np.uint8), -1)
        if cv_image is None:
            continue
        img_stream = cv2.imencode('.jpg', cv_image)[1]  # 编码图片
        image_obj = BytesIO(img_stream)
        del image_obj
        del img_stream
        del cv_image
  
相关推荐
空城皆是旧梦4 分钟前
python爬虫初体验(五)—— 边学边玩小游戏
开发语言·爬虫·python
江河湖海19 分钟前
使用Python编写一个简单的网站爬虫,从网站上抓取新闻标题和链接。
开发语言·爬虫·python
和风33023 分钟前
Python 人脸检测:使用 Dlib 和 OpenCV
python·opencv
m 哆哆.ღ27 分钟前
【Python进阶】Python中的数据库交互:ORM技术与SQLAlchemy
数据库·python·交互
大脑经常闹风暴@小猿1 小时前
Django启用国际化支持(2)—实现界面内切换语言:activate()
后端·python·django
0号——开拓者1 小时前
Python函数——函数的传入参数
开发语言·python
YRr YRr1 小时前
理解 Python 解释器:CPython 与 IPython 的比较及选择指南
开发语言·python·ipython
hope_wisdom1 小时前
实战OpenCV之人脸识别
人工智能·opencv·计算机视觉·人脸识别·facedetectoryn
予安灵1 小时前
Python中exifread库使用
开发语言·python·exifread
YRr YRr1 小时前
如何将 Anaconda 源切换到国内镜像以提高下载速度:详细教程 ubuntu20.04 Pytorch
人工智能·pytorch·python