qq_39347661 2019-06-28 14:45 采纳率: 33.3%
浏览 2220
已结题

python 处理图片太慢了怎么办?

本人刚接触python,想做图片的处理:对一张RGB图像进行处理,判断每个点如果R<150或者G<150或者B<150则把这个点变为【0,0,0】。但是对于一章4000*6000的照片来说要运行两分多钟,请问有没有大神可以为我指点迷津,采用什么方法能把速度缩短到一秒以内。

img = cv2.imread("./IMG_4314.jpg");
for i in range(len(img)):
    for ii in range(len(img[i])):
        if img[i][ii][0]<yu or img[i][ii][1]<yu or img[i][ii][2]<yu:
            img[i][ii]=np.array([0,0,0])
cv2.imwrite('./white4981.jpg',img,[int(cv2.IMWRITE_JPEG_QUALITY),70])

图片说明

注:不要c++的方法,就想用python

  • 写回答

3条回答

  • wlq199101 2019-06-28 15:52
    关注

    不知道行不行

    from PIL import Image
    
    img = Image.open('E:\\Administrator\\Desktop\\微信图片_20181217104229.jpg')
    
    pix = img.load()
    width = img.size[0]
    height = img.size[1]
    for x in range(width):
        for y in range(height):
            r, g, b = pix[x, y]
            #print(r, g, b)
            if(r<150 or g < 150 or b<150):
                pix[x, y] = 0             
    img.show()
    
    评论

报告相同问题?

悬赏问题

  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用