{"id":13442199,"url":"https://github.com/OuyangJunyuan/PointCloudRenderer","last_synced_at":"2025-03-20T13:32:57.039Z","repository":{"id":43909119,"uuid":"510010400","full_name":"OuyangJunyuan/PointCloudRenderer","owner":"OuyangJunyuan","description":"a point cloud renderer based on mitsuba3","archived":false,"fork":false,"pushed_at":"2023-03-10T05:55:24.000Z","size":22007,"stargazers_count":33,"open_issues_count":1,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-08-01T03:39:11.228Z","etag":null,"topics":["pointcloud","rendering"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OuyangJunyuan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2022-07-03T11:58:56.000Z","updated_at":"2024-07-11T02:29:25.000Z","dependencies_parsed_at":"2024-01-16T02:46:24.454Z","dependency_job_id":"9b9ed457-e709-4417-a07a-493df2ff9a6b","html_url":"https://github.com/OuyangJunyuan/PointCloudRenderer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OuyangJunyuan%2FPointCloudRenderer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OuyangJunyuan%2FPointCloudRenderer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OuyangJunyuan%2FPointCloudRenderer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OuyangJunyuan%2FPointCloudRenderer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OuyangJunyuan","download_url":"https://codeload.github.com/OuyangJunyuan/PointCloudRenderer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221768493,"owners_count":16877648,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["pointcloud","rendering"],"created_at":"2024-07-31T03:01:42.816Z","updated_at":"2025-03-20T13:32:57.031Z","avatar_url":"https://github.com/OuyangJunyuan.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# Point Cloud Renderer\n\n\u003cimg src=\"workspace/demo/results/car_rot_z.gif\"   style=\"zoom:48%;\" /\u003e\n\n# Update\n* 2023-03-10: \n  * Currently, it is compatible with mitsuba3. \n  * Support GIF recording for moving views or points. \n\n# Preparation\n\n`pip install -r requirements.txt`\n \n\n\n## Preliminary\n\n* point cloud format： the extension is `npy` (saved by numpy ), storing a list of [x,y,z,...]. \n* coordinate definition: \n  * left: x\n  * up:z\n  * screen facing out: y\n\n[//]: # (漫反射)\n\n[//]: # (\u003cbsdf type=\"diffuse\" id=\"red\"\u003e)\n\n[//]: # (\u003crgb name=\"reflectance\" value=\"0.570068, 0.0430135, 0.0443706\"/\u003e)\n\n[//]: # (\u003c/bsdf\u003e)\n\n[//]: # (透明)\n\n[//]: # (\u003cbsdf type=\"dielectric\" id=\"glass\"/\u003e)\n\n[//]: # (反光)\n\n[//]: # (\u003cbsdf type=\"conductor\" id=\"mirror\"/\u003e)\n## single image rendering\n\u003cimg src=\"workspace/demo/results/car_single.jpg\"  height=\"180\" /\u003e\n\n```shell\npython scripts/once.py \\\n-f workspace/demo/car.npy \\             \n-o ./workspace/demo/results/car_single \\ \n--format xyzi \\   \n--color_by i --color_normalize \\\n--pose 0 0 0 0 0 -180\n--preview \n```\narguments:\n* -f: path to input point cloud\n* -o: path to output image \n* --format: the format of the given point cloud, e.g., xyz/xyzi/xyzrgbs/...\n* --color_by: which data field is used to render colors when the point cloud file does not provide rgb field for each point.\n* --color_normalize: normalize color_by\n* --pose: the pose [x y z r p y] of the given points (in degrees). \n* --preview: for quickly rendering. \n\nbesides, you can modify the config file `config.yaml` to adjust the size of images or other parameters of the renderer:\n* sample: sample per pixel, the higher, the better rendering quality.\n\n## a rotating object\n\u003cimg src=\"workspace/demo/results/car_rot_z.gif\"  height=\"180\" \u003e\n\n```shell\npython scripts/anim_obj_axis.py \\\n-f workspace/demo/car.npy \\\n-o ./workspace/demo/results/car_rot_z \\\n--pose 0 0 0 0 0 -180 \\\n--axis 3 0 360 5 \\\n--fps 15\n```\narguments:\n* -axis: [axis order(x:1,y:2,z:3), begin, end ,interval]\n* -fps: the frames per second for gif animation.\n\n## given pose list\n\u003cimg src=\"workspace/demo/results/car_poses.gif\"  height=\"180\" \u003e\n\n```shell\npython scripts/anim_obj.py \\\n-f workspace/demo/car.npy \\\n-o ./workspace/demo/results/car_rot_z \\\n--pose 0 0 0 0 0 -180 \\\n--pose_file ./workspace/demo/poses.txt  \\\n--fps 15\n```\n\n## traveling in scene\n\u003cimg src=\"workspace/demo/results/car_views.gif\"  height=\"180\" /\u003e\n\n```shell\npython scripts/anim_view.py \\\n-f workspace/demo/car.npy \\\n-o ./workspace/demo/results/car_views \\\n--pose 0 0 0 0 0 -180 \\\n--view_file ./workspace/demo/views.txt  \\\n--fps 2\n```\n\narguments:\n* --view_file: store a list of (camera_x,camera_y,camera_z,target_x,targe_y,targe_z)\n\n# Further development\n1. The official reference link is given inline the code about scene definition. \n2. Edit the scene: [ref](git@github.com:OuyangJunyuan/PointCloudRenderer.git)\n3. for more properties of plugins please refer\nthis [link](https://mitsuba.readthedocs.io/en/stable/src/rendering_tutorials.html).\n\n# Acknowledge\n\nThis script deeply based on[Mitsuba2PointCloudRenderer](https://github.com/tolgabirdal/Mitsuba2PointCloudRenderer) and [PointFlowRenderer](https://github.com/zekunhao1995/PointFlowRenderer) and is an easy-to-use version.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FOuyangJunyuan%2FPointCloudRenderer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FOuyangJunyuan%2FPointCloudRenderer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FOuyangJunyuan%2FPointCloudRenderer/lists"}