import glob
import cv2def access_pixels(file, frame):print(frame.shape)  # shape内包含三个元素:按顺序为高、宽、通道数height = frame.shape[0]weight = frame.shape[1]channels = frame.shape[2]print("weight : %s, height : %s, channel : %s" % (weight, height, channels))if channels != 4:return# cv2.imwrite('crop.jpg', crop)bound_x_min = 0bound_x_max = 0bound_y_min = 0bound_y_max = 0for row in range(height):  # 遍历高exist_color = Falsefor col in range(weight):  # 遍历宽if frame[row, col, 3] == 255:exist_color = Trueif bound_y_min == 0:bound_y_min = rowif not exist_color and bound_y_min != 0 and bound_y_max == 0:bound_y_max = row - 1for col in range(weight):  # 遍历高exist_color = Falsefor row in range(height):  # 遍历宽if frame[row, col, 3] == 255:exist_color = Trueif bound_x_min == 0:bound_x_min = colif not exist_color and bound_x_min != 0 and bound_x_max == 0:bound_x_max = col - 1clip_image = frame[max(bound_y_min - 5, 0):min(bound_y_max + 5, height), max(bound_x_min - 5, 0):min(bound_x_max + 5, weight)]resized_img = cv2.resize(clip_image, (clip_image.shape[1] // 2, clip_image.shape[0] // 2))#cv2.imshow('clip_image', clip_image)cv2.imwrite(file, resized_img)def main():"""入口"""# file = "D:/alt/unlimited/project/Assets/UI/Atlas/Icon/Icon_M4A1S_Normal.png"for file in glob.glob("D:/alt/unlimited/project/Assets/UI/Atlas/Icon/*.png"):src = cv2.imread(file, cv2.IMREAD_UNCHANGED)# cv2.imshow(file, src)access_pixels(file, src)if __name__ == "__main__":main()cv2.waitKey(0)

使用python opencv批量对贴图进行除透明边并压缩相关推荐

  1. Python OpenCV 批量修改文件夹内所有图片的尺寸

    Python OpenCV 批量修改文件夹内所有图片的尺寸 简述 插件 遍历所有文件(包括子文件) 缩放图片尺寸并保存图片 遍历并修改图片 简述 遍历文件夹下的所有子文件(包括自文件夹内的)的图片批量 ...

  2. python opencv随机位置添加水印图

    python opencv随机位置添加水印图 需求:一张水印图A,一张待添加水印的图B,需要将水印A随机添加到B图上,进行线性加深操作,最后resize到指定大小 实现效果(背景图来自网络,侵删): ...

  3. Python+OpenCV批量给图片加噪声

    利用python和opencv批量给图像加噪声(椒盐噪声.高斯噪声.随机噪声) 导入头文件 import os import cv2 import numpy as np import random ...

  4. python opencv 批量将视频转化为图片

    单个的视频转换图片参看: python opencv 把视频转为图片 对于多个视频,采用多线程处理方法 video_path为待转换视频的路径,pic_path为输出图像的路径,输出的图像统一保存在p ...

  5. python opencv:批量识别拼接图片分界线并进行自动裁剪

    本文主要内容 一 项目概要 二 项目流程 三 图像边缘提取 四 直线检测 五 项目代码 一 项目概要 在网上找图片素材时,有很多的图片是长图片,在一张图片上拼接了许多张图片,而很多时候我们需要单张图片 ...

  6. python opencv图像拼接 多张图相互有重复部分

    import cv2 import math import os# 文件夹所有图片 path = "Images/ROIRun" images = [] for filename ...

  7. 使用Python Opencv解决PPT保存的PNG不透明问题

    在使用opencv制作图像透明遮盖(掩膜)的时候,发现使用PPT保存的png图片不是透明的,带有的颜色会遮住背景. 输出图像后发现,ppt保存的png图片中,透明区域的三通道像素为129,129,12 ...

  8. Python+Opencv:在视频上叠加一个背景透明Logo

    前言:看电视节目时,电视台都会把打在视频上,大多数视频Logo背景都是固定不便的,但有些做得好的效果是,Logo背后的视频是随节目内容实时变化的.这到底怎么实现的呢? 经过实践,我也搞了一个Logo背 ...

  9. python批量resize图片大小_python opencv 批量改变图片的尺寸大小的方法

    我目标文件夹下有一大批图片,我要把它转变为指定尺寸大小的图片,用pthon和opencv实现的. 以上为原图片. import cv2 import os # 按指定图像大小调整尺寸 def resi ...

最新文章

  1. python图片识别-python图像识别
  2. 使用迭代器从map或vector中删除元素
  3. SQL Server 2008数据库,显示正在恢复,想把它删了结果删除不了
  4. html溢出自动滚动,html – 溢出-y:使用overflow-x滚动:可见
  5. MySQL 5.5 手册下载
  6. sparkUI使用与扩展
  7. python123.io简单编程题合集
  8. JSON cannot be resolved 解决方法
  9. 利用栈来完成表达式求值
  10. 计算机快速格式化u盘启动,制作启动盘格式化u盘
  11. android m是什么版本号,Android M版本号确定,并不是Android 6.0
  12. 码出高效:Java开发手册PDF
  13. (非常实用)局部解剖学重点
  14. 上市4天暴降1500元,iPhone14创下了苹果降价最快纪录
  15. 安装更强大更美观的zsh,配置oh my zsh及插件
  16. C/C++文件输入输出(详细介绍)
  17. AntiVir UNIX 在Ubuntu 8.04下的安装
  18. 海康威视2023届超新星实习生招聘
  19. CSDN、掘金、简书博客文章如何转为Markdown?
  20. Kubernetes1.23.5集群部署

热门文章

  1. 利用Python实现FGO自动战斗脚本
  2. 专访卜茂霞:嵌入式汽车开发潜力巨大
  3. 2022CPA财务成本管理-企业管理专题Corporate Goverance【完结】
  4. 10年资深DBA老郭(门下已出多位DBA学生)老男孩MySQL DBA标杆班实战视频教程
  5. Albert Einstein—一个真正值得敬仰的伟人(什么超级什么星什么一班都靠边站兼滚蛋!)
  6. win7系统下 安装anaconda时报错“failed to create menus”的解决方案
  7. 微信web开发者工具、网易云音乐、为知笔记等软件崩溃无法打开等问题的解决
  8. selenium下拉列表定位之 select+option 的定位
  9. vistor和tsmserver不在同一台机器上的连接问题
  10. 算术,逻辑左移右移(转)