【zoedepth】代码阅读与踩坑

2023-12-19

训练

真正训练代码: zoedepth/trainers/base_trainer.py:181

每个batch zoedepth.trainers.zoedepth_trainer.Trainer.train_on_batch

losses = self.train_on_batch(batch, i)

报错

运行到这里报错

Training ZoeDepth
Traceback (most recent call last):
  File "C:\Program Files\JetBrains\PyCharm 2023.1\plugins\python\helpers\pydev\_pydevd_bundle\pydevd_comm.py", line 304, in _on_run
    r = r.decode('utf-8')
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe6 in position 1023: unexpected end of data
Traceback (most recent call last):
  File "D:\code\Github_code\ZoeDepth\train_mono_tensorboard_load_pre_handle_bit.py", line 278, in <module>
    main_worker(config.gpu, ngpus_per_node, config, writer)
  File "D:\code\Github_code\ZoeDepth\train_mono_tensorboard_load_pre_handle_bit.py", line 196, in main_worker
    trainer.train()
  File "D:\code\Github_code\ZoeDepth\zoedepth\trainers\base_trainer.py", line 190, in train
    pbar = tqdm(enumerate(self.train_loader), desc=f"Epoch: {epoch + 1}/{self.config.epochs}. Loop: Train",
  File "C:\conda\envs\zoe\lib\site-packages\torch\utils\data\dataloader.py", line 430, in __iter__
    self._iterator = self._get_iterator()
  File "C:\conda\envs\zoe\lib\site-packages\torch\utils\data\dataloader.py", line 381, in _get_iterator
    return _MultiProcessingDataLoaderIter(self)
  File "C:\conda\envs\zoe\lib\site-packages\torch\utils\data\dataloader.py", line 1034, in __init__
    w.start()
  File "C:\conda\envs\zoe\lib\multiprocessing\process.py", line 121, in start
    self._popen = self._Popen(self)
  File "C:\conda\envs\zoe\lib\multiprocessing\context.py", line 224, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)
  File "C:\conda\envs\zoe\lib\multiprocessing\context.py", line 327, in _Popen
    return Popen(process_obj)
  File "C:\conda\envs\zoe\lib\multiprocessing\popen_spawn_win32.py", line 93, in __init__
    reduction.dump(process_obj, to_child)
  File "C:\conda\envs\zoe\lib\multiprocessing\reduction.py", line 60, in dump
    ForkingPickler(file, protocol).dump(obj)
KeyboardInterrupt

Process finished with exit code -1073741510 (0xC000013A: interrupted by Ctrl+C)

推理

    @torch.no_grad()
    def infer_pil(self, pil_img, pad_input: bool=True, with_flip_aug: bool=True, output_type: str="numpy", **kwargs) -> Union[np.ndarray, PIL.Image.Image, torch.Tensor]:
        """
        Inference interface for the model for PIL image
        Args:
            pil_img (PIL.Image.Image): input PIL image
            pad_input (bool, optional): whether to use padding augmentation. Defaults to True.
            with_flip_aug (bool, optional): whether to use horizontal flip augmentation. Defaults to True.
            output_type (str, optional): output type. Supported values are 'numpy', 'pil' and 'tensor'. Defaults to "numpy".
        """
        x = transforms.ToTensor()(pil_img).unsqueeze(0).to(self.device)
        out_tensor = self.infer(x, pad_input=pad_input, with_flip_aug=with_flip_aug, **kwargs)
        if output_type == "numpy":
            return out_tensor.squeeze().cpu().numpy()
        elif output_type == "pil":
            # uint16 is required for depth pil image
            out_16bit_numpy = (out_tensor.squeeze().cpu().numpy()*256).astype(np.uint16)
            return Image.fromarray(out_16bit_numpy)
        elif output_type == "tensor":
            return out_tensor.squeeze().cpu()
        else:
            raise ValueError(f"output_type {output_type} not supported. Supported values are 'numpy', 'pil' and 'tensor'")
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【zoedepth】代码阅读与踩坑 的相关文章

  • 上传时的 Google Drive API——这些额外的空行从何而来?

    总结一下该程序 我从我的 Google 云端硬盘下载一个文件 然后在本地计算机中打开并读取一个文件 file a txt 然后在我的计算机中打开另一个文件 file b txt 处于附加模式 并且在使用这个新的 file b 更新我的 Go
  • 嵌套字典中的 Django 模板

    我正在使用 Django 模板 并且遇到了嵌套字典的一个问题 Dict result dict type 0 file name abc count 0 type 1 file name xyz count 50 我的 HTML 文件中的模
  • 如何使用 colorchecker 在 opencv 中进行颜色校准?

    我有数码相机获取的色彩检查器图像 我如何使用它来使用 opencv 校准图像 按照以下颜色检查器图像操作 您是想问如何进行颜色校准或如何使用 OpenCV 进行校准 为了进行颜色校准 您可以使用校准板的最后一行 灰色调 以下是您应该逐步进行
  • TensorFlow:带有轴选项的 bincount

    在 TensorFlow 中 我可以使用 tf bincount 获取数组中每个元素的计数 x tf placeholder tf int32 None freq tf bincount x tf Session run freq feed
  • 在 python 3 中使用子进程

    我使用 subprocess 模块在 python 3 中运行 shell 命令 这是我的代码 import subprocess filename somename py in practical i m using a real fil
  • Python 是解释型的还是编译型的,或者两者兼而有之?

    据我了解 An 解释的语言是由解释器 将高级语言转换为机器代码然后执行的程序 实时运行和执行的高级语言 它一次处理一点程序 A compiled语言是一种高级语言 其代码首先由编译器 将高级语言转换为机器代码的程序 转换为机器代码 然后由执
  • 如何在VIM中设置文件的正确路径?

    每当我击中 pwd在 vim 中命令总是返回路径C Windows system32 即使我在桌面上的 Python 文件中 所以每当我跑步时 python 命令返回 python can t open file Users myname
  • Python tkinter.filedialog Askfolder 干扰 clr

    我主要在 Spyder 中工作 构建需要弹出文件夹或文件浏览窗口的脚本 下面的代码在spyder中完美运行 在 Pycharm 中 askopenfilename工作良好 同时askdirectory什么都不做 卡住了 但是 如果在调试模式
  • 小部件之间的自定义信号

    尝试将信号从一个 gtk EventBox 子级发送到另一个 在 init HeadMode 第 75 行 上出现错误 类型错误 未知信号名称 消息发送 why usr bin env python coding utf8 import p
  • 如何在Python中高效地添加稀疏矩阵

    我想知道如何在Python中有效地添加稀疏矩阵 我有一个程序 可以将大任务分解为子任务 并将它们分配到多个 CPU 上 每个子任务都会产生一个结果 一个 scipy 稀疏矩阵 格式为 lil matrix 稀疏矩阵尺寸为 100000x50
  • 更改 x 轴比例

    我使用 Matlab 创建了这个图 使用 matplotlib x 轴绘制大数字 例如 100000 200000 300000 我想要 1 2 3 和 10 5 之类的值来指示它实际上是 100000 200000 300000 有没有一
  • 将 numpy 代码点数组与字符串相互转换

    我有一个很长的 unicode 字符串 alphabet range 0x0FFF mystr join chr random choice alphabet for in range 100 mystr re sub W mystr 我想
  • 使用 Python 计算 Spark 中成对 (K,V) RDD 中每个 KEY 的平均值

    我想与 Python 共享这个特定的 Apache Spark 解决方案 因为它的文档非常贫乏 我想通过 KEY 计算 K V 对 存储在 Pairwise RDD 中 的平均值 示例数据如下所示 gt gt gt rdd1 take 10
  • Pandas:如何将数据框插入 Clickhouse

    我正在尝试将 Pandas 数据框插入 Clickhouse 这是我的代码 import pandas import sqlalchemy as sa uri clickhouse default localhost default ch
  • Python Pandas:如何对组中的所有项目进行分组并为其分配 id?

    我有 df domain orgid csyunshu com 108299 dshu com 108299 bbbdshu com 108299 cwakwakmrg com 121303 ckonkatsunet com 121303
  • 在 Spyder 的变量资源管理器中查看局部变量

    我是 python 新手 正在使用 Spyder 的 IDE 我欣赏它的一项功能是它的变量资源管理器 然而 根据一些研究 我发现它只显示全局变量 我找到的解决方法是使用检查模块 import inspect local vars def m
  • sqlite3从打印数据中删除括号

    我创建了一个脚本 用于查找数据库第一行中的最后一个值 import sqlite3 global SerialNum conn sqlite3 connect MyFirstDB db conn text factory str c con
  • bs4 `next_sibling` VS `find_next_sibling`

    我在使用时遇到困难next sibling 并且类似地与next element 如果用作属性 我不会得到任何返回 但如果用作find next sibling or find next 然后就可以了 来自doc https www cru
  • 通过 Web 界面执行 python 单元测试

    是否可以通过 Web 界面执行单元测试 如果可以 如何执行 EDIT 现在我想要结果 对于测试 我希望它们是自动化的 可能每次我对代码进行更改时 抱歉我忘了说得更清楚 EDIT 这个答案此时已经过时了 Use Jenkins https j
  • python 日志记录会刷新每个日志吗?

    当我使用标准模块将日志写入文件时logging 每个日志会分别刷新到磁盘吗 例如 下面的代码会将日志刷新 10 次吗 logging basicConfig level logging DEBUG filename debug log fo

随机推荐

  • Java版企业电子招标采购系统源码—鸿鹄电子招投标系统-企业战略布局下的采购寻源

    项目说明 随着公司的快速发展 企业人员和经营规模不断壮大 公司对内部招采管理的提升提出了更高的要求 在企业里建立一个公平 公开 公正的采购环境 最大限度控制采购成本至关重要 符合国家电子招投标法律法规及相关规范 以及审计监督要求 通过电子化
  • MySQL性能监控

    1 创建监控用户 mysql gt CREATE USER mysqld exporter localhost IDENTIFIED BY Mysqld exporter 123 WITH MAX USER CONNECTIONS 3 my
  • API接口能力不足?Bug处理慢?Lazada开放平台API商品接入

    7月30日正式发布的Lazada开放平台2 0 Lazada Open Platform 2 0 从 商品API 订单API IM 即时通信 API 营销工具等几大方向 带来全新升级的API体系 共 新增47个接口 优化19个接口 向广大的
  • 免费有意思的好用API推荐

    周公解梦 周公解梦大全 周公解梦查询 免费周公解梦 星座查询 根据日期或星座名称 查询星座详细信息 包含 掌管宫位 主管星 颜色 珠宝 幸运数字 性格等等 生肖查询 根据生肖名称 查询生肖详细信息 包含 五行分析 本命佛 生辰 吉祥颜色 幸
  • Vue的组件化

    组件化步骤 1 创建Vue组件 const school Vue extend template div h2 学校名称 schoolName h2 h2 学校地址 schoolAddress h2 div data return scho
  • torch.rand()和torch.randn()的区别

    torch rand 和 torch randn 是 PyTorch 中用于生成张量的两个函数 它们之间的主要区别在于生成张量元素的方式不同 1 torch rand torch rand 用于生成元素值在 0 1 之间均匀分布的随机张量
  • uniapp初级入门-flex布局学习11-骰子多点演示

    代码
  • python pdf转图片

    import fitz def pdf2img pdf path img dir doc fitz open pdf path 打开pdf for page in doc 遍历pdf的每一页 zoom x 2 0 设置每页的水平缩放因子 z
  • Android的组件、布局学习

    介绍 公司组织架构调整 项目组需要承接其他项目组的android项目 负责维护和开发新需求 故学习下基础语法和项目开发 组件学习 Toolbar header布局部分 就是app最顶部的部分 他的显示与否 是与F androidProjec
  • 使用AI大模型增强图像清晰度

    在线体验 点击 图像处理 即可使用 public static final String IMAGE DEFINITION ENHANCE https aip baidubce com rest 2 0 image process v1 i
  • C++基础-一维和二维数组详解

    目录 定义 一维数组 二维数组 定义 数组是相同类型的对象序列 它们占据一块连续的内存区 一维数组
  • 《计算机是怎样跑起来的》读书笔记

    目录 1 计算机组成 1 CPU Central Processing Unit 中央处理器 2 硬盘 Hard Disk Drive 3 内存 Memory 4 输入与输出设备 I 0设备
  • 讲解selenium 获取href find_element_by_xpath

    目录 讲解selenium获取href find element by xpath 什么是XPath 使用find element by xpath获取href Selenium的特点和优势 Selenium的应用场景 Selenium的核
  • HWSD中国土壤数据库

    数据名称 HWSD中国土壤数据库 数据时间 2009年 数据格式 Shp和Tiff 数据坐标系 WGS1984和krasovsky 1940 Albers 数据介绍 数据来源于联合国粮农组织 FAO 和维也纳国际应用系统研究所 IIASA
  • 如何在出厂重置后从 Android 恢复丢失的数据、照片、联系人

    什么是恢复出厂设置 恢复出厂设置是将电子设备恢复到制造商在工厂设置的原始状态 也称为主重置或硬重置 恢复出厂设置有什么作用 这样做将删除用户在设备上添加的所有数据 设置和应用程序 当手机需要出售 需要擦除个人数据或者遇到设备故障 病毒攻击
  • 黑豹程序员-自定义表单实现门户自定制

    功能 用户可以实现欢迎页面自己定制 数据由数据库表进行维护 原理 页面利用div进行布局 拖动div记录其坐标 并写库 页面加载时从数据库表中读取div坐标和数据即可 效果图
  • 第三方软件验收测评在项目验收中的重要性

    CMA CNAS第三方检测报告 软件从最简单的家用电冰箱到工业生产 涉及方方面面 以前软件中的问题只是个人重启一下机器的小事情 但如今软件已在大型工业中发挥越来越大的作用 软件安全与质量的隐患已可能对人身安全和环境造成威胁 软件工程 的总目
  • 【Redis】Redis 配置文件

    1 概述 相同文件 Redis redis 配置 配置文件 redis conf 自定义目录 myredis redis conf 4 1 Units单位 配置大小单位 开头定义了一些基本的度量单位 只支持bytes 不支持bit 大小写不
  • 基于微信小程序的宠物商城系统设计与实现

    博主介绍 全网粉丝10W CSDN全栈领域优质创作者 博客之星 掘金 华为云 阿里云等平台优质作者 精彩专栏 推荐订阅 计算机毕设精品项目案例 持续更新 文末获取源码 数据库 文档 感兴趣的可以先收藏起来 还有大家在毕设选题 项目以及论文编
  • 【zoedepth】代码阅读与踩坑

    训练 真正训练代码 zoedepth trainers base trainer py 181 每个batch zoedepth trainers zoedepth trainer Trainer train on batch losses