查看ITHOR全部仿真家庭场景

1. 目标

  1. 按序号显示所有120个家庭场景
  2. 统计单个场景里物体数量

2. 代码

python 复制代码
import time
from ai2thor.controller import Controller

# 统计当前场景中的物体数量
def count_objects_in_scene(controller):
    objects = controller.last_event.metadata["objects"]
    object_count = len(objects)
    return object_count

# 初始化控制器
controller = Controller(
    width=1280,
    height=720,
    fieldOfView=110,
    visibilityDistance=5,
    renderInstanceSegmentation=True
)

input("请按任意键启动场景遍历:")

# 定义需要遍历的场景编号范围
scene_ranges = [
range(1, 31),   # 厨房
range(201, 231), # 客厅
range(301, 331), # 卧室
range(401, 431)  # 浴室
]

for scene_range in scene_ranges:
    for scene_number in scene_range:            
        selected_scene = f"FloorPlan{scene_number}"
        # 刷新到选定的场景
        controller.reset(selected_scene)
        # 统计当前场景中的物体数量
        object_count = count_objects_in_scene(controller)        
        print(f"{selected_scene}场景中共有 {object_count} 个物体")
        time.sleep(0.5)  # 等待0.5秒后进入下一个场景

3. 最终成果

ithor全部场景

相关推荐
微小冷21 分钟前
Julia卫星工具箱SatelliteToolbox简介
开发语言·航天·坐标转换·julia·卫星工具箱
2601_colin28 分钟前
Codex插件全流程实战指南
开发语言·经验分享·笔记·微信开放平台
林爷万福44 分钟前
GitHub 开源光谱数据处理项目推荐
python·光纤光谱仪
Song_da_da_1 小时前
C#与VisionPro联合编程实战:机器视觉二次开发完整指南
开发语言·microsoft·c#
xyzzklk1 小时前
解决Salesforce无法向外发送邮件
android·java·开发语言·网络·crm·salesforce·客户关系管理
copyer_xyf1 小时前
Python 如何同时做很多事:进程、线程、协程
前端·后端·python
Full Stack Developme1 小时前
Spring Bean 依赖注入
python·spring·log4j
yuhuofei20211 小时前
【Python入门】Python中的元组tuple
python
清水白石0082 小时前
从菱形继承到 `super()`:彻底理解 Python MRO 与多继承方法查找机制
开发语言·python
Naiva2 小时前
【数学+MATLAB实验室】第一阶段_函数和图像(一次、二次、指数、对数、正弦、余弦、平移、缩放、叠加)
开发语言·matlab