配置文件Encoder.cfg中比较重要的几项

本文深入探讨编码控制与配置文件使用,详细解释了配置文件中的各项参数设置,包括输入/输出文件配置、B帧与SP帧参数设置、NAL输出控制、CABAC编码方式、MbAFF与PAFF选择等,并提供了对配置文件的理解与分析。

首先,写一些关于-f和-d命令的使用情况吧。

在jm代码内部,默认的设置文件是encoder.cfg,这个文件需要在工作目录下,程序才找得到。如果在工作目录下有这个cfg文件,选用-d xxxx.cfg或-f xxxx.cfg时的效果是一样的。如果工作目录下没有这个encoder.cfg文件,选用-d xxxx.cfg会达到效果,但是-f xxxx.cfg 却不能达到效果。我看了一下代码主要原因是程序在测试是否为-f命令之前要对一个配置文件进行解析,如果默认的配置文件不存在,程序在解析配置默认文件 (encoder.cfg)时出错,直接退出了

 

配置文件的理解:

  1. Files输入/输出文件配置

    这个都比较明显,不用多说了。

  2. Encoder Control 编码控制

(3)接下来的是关于B帧,SP帧相关参数的设置

由于还没有研究到这一块,所以这里先略过这一块

(4)NAL的输出控制

(5)CABAC编码方式也不进行研究了

(6)MbAFF与PAFF的选择

这个选择可以在配置文件中进行设置,具体如下:

(7)剩下的几项都是一些现今我还没有研究到的地方,在这儿就先不分析了。

配置文件中一些量在configfile.h文件中都有对应关系,比如:

 

input

转载于:https://www.cnblogs.com/xkfz007/archive/2012/07/27/2612592.html

好的,以下是一个详细的问题描述,包含了系统环境、配置文件信息和错误信息,应该能帮助你更清晰地向他人求助: --- **问题描述:** 在运行 MMsegmentation 中的 Mask2Former 模型训练时,遇到了以下错误: ```plaintext AttributeError: class `Mask2FormerHead` in mmseg/models/decode_heads/mask2former_head.py: 'ConfigDict' object has no attribute 'layer_cfg' ``` **系统环境:** * **操作系统:** Ubuntu 22.04 * **Python 版本:** 3.9.23 * **CUDA 版本:** 11.6 * **PyTorch 版本:** 1.13.1+cu116 * **TorchVision 版本:** 0.14.1+cu116 * **MMEngine 版本:** 0.7.4 * **GPU:** NVIDIA GeForce RTX 4090 **配置文件:** ```python model = dict( type='Mask2Former', data_preprocessor=dict( type='SegDataPreProcessor', mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], bgr_to_rgb=True, pad_val=0, seg_pad_val=255, size=(512, 512)), backbone=dict( type='ResNet', depth=50, num_stages=4, out_indices=(0, 1, 2, 3), frozen_stages=1, norm_cfg=dict(type='SyncBN', requires_grad=True), norm_eval=False, style='pytorch', init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet50')), neck=dict( type='FPN', in_channels=[256, 512, 1024, 2048], out_channels=256, num_outs=4), decode_head=dict( type='Mask2FormerHead', in_channels=[256, 512, 1024, 2048], strides=[4, 8, 16, 32], num_classes=6, in_index=[0, 1, 2, 3], feat_channels=256, out_channels=256, num_queries=100, num_transformer_feat_level=3, pixel_decoder=dict( type='mmdet.MSDeformAttnPixelDecoder', num_outs=3, norm_cfg=dict(type='GN', num_groups=32), act_cfg=dict(type='ReLU'), encoder=dict( type='DetrTransformerEncoder', num_layers=6, transformerlayers=dict( type='BaseTransformerLayer', attn_cfgs=dict( type='MultiScaleDeformableAttention', embed_dims=256, num_heads=8, num_levels=3, num_points=4, im2col_step=64), ffn_cfgs=dict( type='FFN', embed_dims=256, feedforward_channels=1024, num_fcs=2, ffn_drop=0.0, act_cfg=dict(type='ReLU'))), positional_encoding=dict( type='SinePositionalEncoding', num_feats=128, normalize=True)), enforce_decoder_input_project=False, positional_encoding=dict( type='SinePositionalEncoding', num_feats=128, normalize=True), transformer_decoder=dict( type='DetrTransformerDecoder', return_intermediate=True, num_layers=9, # Missing `layer_cfg` here, which causes the error ), loss_cls=dict( type='CrossEntropyLoss', use_sigmoid=False, loss_weight=2.0, class_weight=[1.0, 1.0, 1.0, 1.0, 1.0, 0.1]), loss_mask=dict( type='CrossEntropyLoss', use_sigmoid=True, loss_weight=5.0, reduction='mean'), loss_dice=dict( type='DiceLoss', use_sigmoid=True, activate=True, loss_weight=5.0)), train_cfg=dict( assigner=dict( type='HungarianAssigner', match_costs=[dict(type='ClassificationCost', weight=2.0), dict(type='CrossEntropyLossCost', weight=5.0, use_sigmoid=True), dict(type='DiceCost', weight=5.0, pred_act=True, eps=1.0)])), test_cfg=dict(mode='whole')) ``` **错误信息:** ```plaintext Traceback (most recent call last): File "/home/lwy/.conda/envs/mmseg39/lib/python3.9/site-packages/mmengine/config/config.py", line 52, in __getattr__ value = super().__getattr__(name) File "/home/lwy/.conda/envs/mmseg39/lib/python3.9/site-packages/addict/addict.py", line 67, in __getattr__ return self.__getitem__(item) File "/home/lwy/.conda/envs/mmseg39/lib/python3.9/site-packages/mmengine/config/config.py", line 48, in __missing__ raise KeyError(name) KeyError: 'layer_cfg' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/lwy/mmsegmentation/mmseg/models/decode_heads/mask2former_head.py", line 42, in __init__ super().__init__(**kwargs) File "/home/lwy/.conda/envs/mmseg39/lib/python3.9/site-packages/mmdet/models/dense_heads/mask2former_head.py", line 106, in __init__ assert pixel_decoder.encoder.layer_cfg. AttributeError: 'ConfigDict' object has no attribute 'layer_cfg' ```
最新发布
08-15
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值