4
0
mirror of https://github.com/nerfstudio-project/nerfstudio.git synced 2026-11-11 02:24:38 +08:00

Hide fixed args, fix method description formatting (#667)

This commit is contained in:
Brent Yi 2022-10-04 21:05:40 -07:00 committed by GitHub
parent ce8985aeb6
commit e9f56e127a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 4 deletions

View File

@ -21,6 +21,8 @@ from __future__ import annotations
from dataclasses import field
from typing import Any, Dict
from rich.console import Console
# pylint: disable=import-outside-toplevel
# cannot use mutable types directly within dataclass; abstracting default factory calls
@ -31,3 +33,18 @@ def to_immutable_dict(d: Dict[str, Any]):
d: dictionary to convert into default factory dict for dataclass
"""
return field(default_factory=lambda: dict(d))
def convert_markup_to_ansi(markup_string: str) -> str:
"""Convert rich-style markup to ANSI sequences for command-line formatting.
Args:
markup_string: Text with rich-style markup.
Returns:
Text formatted via ANSI sequences.
"""
console = Console()
with console.capture() as out:
console.print(markup_string, soft_wrap=True)
return out.get()

View File

@ -21,8 +21,10 @@ from __future__ import annotations
from typing import Dict
import dcargs
from rich.console import Console
from nerfstudio.configs.base_config import Config, TrainerConfig, ViewerConfig
from nerfstudio.configs.config_utils import convert_markup_to_ansi
from nerfstudio.data.datamanagers import VanillaDataManagerConfig
from nerfstudio.data.dataparsers.blender_dataparser import BlenderDataParserConfig
from nerfstudio.data.dataparsers.friends_dataparser import FriendsDataParserConfig
@ -46,6 +48,8 @@ descriptions = {
"semantic-nerfw": "Predicts semantic segmentations and filters out transient objects.",
"vanilla-nerf": "Original NeRF model. [red]*slow*",
}
descriptions = {k: convert_markup_to_ansi(v) for k, v in descriptions.items()}
method_configs["nerfacto"] = Config(
method_name="nerfacto",
@ -147,9 +151,9 @@ method_configs["vanilla-nerf"] = Config(
)
AnnotatedBaseConfigUnion = dcargs.extras.subcommand_type_from_defaults(
defaults=method_configs, descriptions=descriptions
)
AnnotatedBaseConfigUnion = dcargs.conf.SuppressFixed[ # Don't show unparseable (fixed) arguments in helptext.
dcargs.extras.subcommand_type_from_defaults(defaults=method_configs, descriptions=descriptions)
]
"""Union[] type over config types, annotated with default instances for use with
dcargs.cli(). Allows the user to pick between one of several base configurations, and
then override values in it."""

View File

@ -18,7 +18,7 @@ dependencies = [
"aiortc==1.3.2",
"appdirs>=1.4",
"av==9.2.0",
"dcargs>=0.3.20",
"dcargs>=0.3.21",
"gdown==4.5.1",
"ninja==1.10.2.3",
"functorch==0.2.1",