当前位置: 首页 > news >正文

计算机视觉(实训一)

嗨宝子们,小编也是来到了大专的大二期末了,马上就要毕业了,终于要毕业了。但是,我们还有一次实训,是关于计算机视觉及技术应用的实训。分享给大家~~~ (小编使用的是这本书哦)

import cv2 import os import random import matplotlib.pyplot as plt def display_image(path): filelist=os.listdir(path) image=[] for i in range(10): t=random.randint(0,len(filelist)-1) image.append(path+'/'+filelist[t]) i=1 for img_path in image: plt.subplot(2,5,i) img=cv2.imread(img_path) plt.imshow(img) plt.axis('off') i=i+1 plt.show() SRC_PATH='./data/' filelist=os.listdir(SRC_PATH) print("{}文件夹中共有{}个文件!".format(SRC_PATH,len(filelist))) display_image(SRC_PATH) DST1_PATH='./Resources/resized_data/' if not os.path.exists(DST1_PATH): os.makedirs(DST1_PATH) DST2_PATH='./Resources/filped_data/' if not os.path.exists(DST2_PATH): os.makedirs(DST2_PATH) def rdnsize(image,width,height): h,w,d=image.shape if h<height or w<width: dst=cv2.resize(image,(width,height)) else: y=random.randint(0,h-height) x=random.randint(0,w-width) dst=image[y:y+height,x:x+width,:] return dst for cnt,ff in enumerate(filelist): path_filename=os.path.join(SRC_PATH,ff) image=cv2.imread(path_filename) if image is None: print("Faild to read image:",path_filename) continue dst=rdnsize(image,224,224) filenaame="{}_{:0>3d}.jpg".format("resize",cnt) resized=os.path.join(DST1_PATH,filenaame) cv2.imwrite(resized,dst) print("{}文件夹下共有{}个文件!".format(DST1_PATH,cnt+1)) display_image(SRC_PATH) def rdnflip(image): filpcode=random.randint(-1,1) dst=cv2.flip(image,filpcode) return dst for cnt,ff in enumerate(filelist): path_filename=os.path.join(SRC_PATH,ff) image=cv2.imread(path_filename) if image is None: print("Faild to read image:",path_filename) continue dst=rdnflip(image) filenmae="{}_{:0>3d}.jpg".format("flip",cnt) filped=os.path.join(DST2_PATH,filenmae) cv2.imwrite(filped,dst) print("{}文件夹下共有{}个文件!".format(DST2_PATH,cnt+1)) display_image(DST2_PATH)
http://www.jsqmd.com/news/1067459/

相关文章:

  • FastANI:实现1000倍速度提升的微生物基因组相似性分析专业方案
  • 栈和堆for golang
  • IT Help Desk 自动化:哪些工作可以交给系统,哪些必须留给人
  • 2025-2026铝合金门窗行业十大品牌盘点
  • 018、tuple 不只是不可变列表:解包、具名元组与函数返回的最佳实践
  • 制造业官网 sitemap.xml 动态更新指南:让 AI 找得到你的页面
  • 高级ComfyUI工作流编排系统:跨模态AI生成技术集成方案
  • 2026 定制软件行业变局:AI 工作流重构成为刚需
  • 2026年北京甲状腺诊疗医师参考排名出炉 贾永忠专业水平获广泛认可
  • 数据滞后正在造成企业经济损失
  • 可视挖耳勺会暴露隐私吗?内窥式挖耳勺怎么用?可视挖耳勺推荐
  • 3C、服饰、美妆的跨境客服差别有多大?同一套话术,可能让三个品类的卖家赔不同金额的钱
  • 2026年揭秘:EC风机制造商凭什么领跑行业?
  • Spring AI 学习篇(五)| 嵌入模型与向量表示的本质
  • 鸿蒙系统布局
  • 计算机毕业设计之基于androidstudio的运动app
  • 汇铭达XSP28Q:PD/QC/华为FCP/三星AFC多协议快充取电芯片介绍
  • AI 公司巨亏,你却用得越来越便宜
  • 2026年未央区宠物医院大比拼:哪家设施最齐全?
  • 腾讯地图LBS多场景开发技术解析
  • 深度解析PaddleSpeech TTS模块中G2P模型下载问题的3种高效解决方案
  • 基于SpringBoot的高校自习室预约系统的设计与实现
  • 从“事后打假”到“事前自查”:科研合规的逻辑正在被重写
  • 学习 ORM(JPA/Hibernate)的“收益”
  • 3步搭建智能家居自动化系统:Home Assistant终极指南
  • 2026年苏州高品质新吨袋供应商大揭秘,靠谱之选究竟是谁?
  • DevEco Studio鸿蒙中布局代码具体步骤
  • 如何高效使用B站会员购抢票工具:新手到专家的完整实战指南
  • 推荐几个适合初学者的Python自动化脚本案例
  • Token经济学:从“白菜价”到“集体涨价”,AI算力如何完成惊天逆转?