Back to Search Document details
32nd Meeting: Hannover, DE, October 2023 2023-10-06 15:04
AHG9: Software implementation and further fixes of the object mask information SEI message
Abstract
This contribution provides the software implementation of the object mask information (OMI) SEI message and also proposes fixes and further changes to the OMI SEI message in the draft 1 of technologies under consideration for future extensions of VSEI.
JVET-AF0088 AHG9: Software implementation and further fixes of the object mask information SEI message [J. Chen, Z. Zhang, Y. Ye, S. Wang (Alibaba)]

This contribution provides the software implementation of the object mask information (OMI) SEI message and also proposes fixes and further changes to the OMI SEI message in the draft 1 of technologies under consideration for future extensions of VSEI.

The proposed fixes and changes include the following four aspects:

  • Aspect 1: The text related to bounding box parameters was fixed and refined.
  • Aspect 2: The binarization of bounding box parameters was changed from ue(v) to u(16)
  • Aspect 3: A gating flag for bounding box parameters was added to give signalling flexibility to the encoder
  • Aspect 4: The parsing dependency among different OMI SEI messages was removed by always signalling omi_mask_cancel[ i ][ j ][ k ]

It was commented that aspect 4 is not a parsing dependency as normally understood. It is more for simplifying storage at decoder.

Decision: It was agreed that the changes 1-4 are appropriate, and shall be integrated into the next TuC.

It was proposed to create a branch in VTM software for this and possible future contributions on SEI messages in TuC. It was commented that providing software for SEI messages in TuC is strongly encouraged, to enable other experts studying them.

Decision (SW): It was agreed to include the software from JVET-AF0088 into the TuC branch of VTM.

AHG9: Other SEI topics (11)

Contributions in this area were discussed at 0930–1055 and 1530 on Tuesday 17 Oct. 2023 (chaired by JRO).

.clang-format .cproject .editorconfig .gitattributes .gitignore .gitignore .gitlab-ci.yml .project .pydevproject 12-bit.cfg 16-bit.cfg __init__.py __init__.py __init__.py __init__.py aarch64-linux-gnu-gcc-ubuntu1804.cmake AdaptiveLoopFilter.cpp AdaptiveLoopFilter.h AdaptiveLoopFilter_avx.cpp AdaptiveLoopFilter_avx2.cpp AdaptiveLoopFilter_sse41.cpp AdaptiveLoopFilterX86.h AffineGradientSearch.cpp AffineGradientSearch.h AffineGradientSearch_avx.cpp AffineGradientSearch_avx2.cpp AffineGradientSearch_sse41.cpp AffineGradientSearchX86.h AlfParameters.h alpha_channel_info.cfg alternative_transfer_characteristics.cfg ambient_viewing_environment.cfg Analyze.h android.py annexBbytecount.cpp AnnexBread.cpp AnnexBread.h AnnexBwrite.h anno_reg_0.txt anno_reg_1.txt anno_reg_2.txt anno_reg_3.txt anno_reg_4.txt AQp.cpp AQp.h ArenaOfValor.cfg ArenaOfValor_444.cfg ArenaOfValor_RGB.cfg BasketballDrill.cfg BasketballDrillText.cfg BasketballDrillText_subpicture_4_slice_2_hor_subpic.cfg BasketballDrive.cfg BasketballPass.cfg BasketballScreen_444.cfg BasketballScreen_RGB.cfg BBuildEnv.cmake BBuildEnvDebug.cmake BBuildEnvLldb.cmake BBuildEnvMingw.cmake BBuildEnvVersion.cmake BinDecoder.cpp BinDecoder.h BinEncoder.cpp BinEncoder.h BirdsInCage_444_10bit.cfg BitStream.cpp BitStream.h BitstreamExtractorApp.cpp BitstreamExtractorApp.h BitstreamExtractorAppCfg.cpp BitstreamExtractorAppCfg.h bitstreamextractormain.cpp bldtools.py BlowingBubbles.cfg BQMall.cfg BQSquare.cfg BQTerrace.cfg Bubbles_RGB_16bit.cfg Buffer.cpp Buffer.h Buffer_avx.cpp Buffer_avx2.cpp Buffer_sse41.cpp BufferX86.h CABACReader.cpp CABACReader.h CABACWriter.cpp CABACWriter.h cache_1d.cfg cache_2d.cfg CacheModel.cpp CacheModel.h Cactus.cfg CADWaveform_444.cfg CADWaveform_GBR.cfg CADWaveform_RGB.cfg Campfire.cfg Cardiac_400_12bit.cfg CatRobot.cfg ChinaSpeed.cfg ChineseEditing_444.cfg ChineseEditing_RGB.cfg ChromaFormat.cpp ChromaFormat.h classF.cfg classH1.cfg classH2.cfg classSCC.cfg cmake.py cmake_docutil.py cmakebuild_update.py CMakeBuildLldbExt.py CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt CMakeLists.txt cmbldup.py cmbldver.py cmk.py cmkdoc.py cmkdocapp.py cmkfnd.py cmksupp.py CodingStatistics.h CodingStructure.cpp CodingStructure.h Common.h common.natvis CommonDef.h CommonDefX86.cpp CommonDefX86.h CommonSimdCfg.h Console_444.cfg Console_RGB.cfg ConstraintInfo.cpp ConstraintInfo.h content_colour_volume.cfg content_light_level.cfg ContextModelling.cpp ContextModelling.h Contexts.cpp Contexts.h convert_NtoMbit_YCbCr.cpp COPYING CrowdRun_444_10bit.cfg CrowdRun_RGB_16bit.cfg CrowdRun_RGB_16bit.cfg DaylightRoad2.cfg DeblockingFilter.cpp DeblockingFilter.h DecApp.cpp DecApp.h DecAppCfg.cpp DecAppCfg.h DecCu.cpp DecCu.h DecLib.cpp DecLib.h decmain.cpp DecSlice.cpp DecSlice.h DepQuant.cpp DepQuant.h depth_representation_info.cfg Desktop_444.cfg Desktop_RGB.cfg display_orientation.cfg Doc_444.cfg Doc_RGB.cfg Doxyfile DTrace for NextSoftware.docx DTrace for NextSoftware.pdf dtrace.cpp dtrace.h dtrace_blockstatistics.cpp dtrace_blockstatistics.h dtrace_buffer.h dtrace_codingstruct.h dtrace_next.h DucksAndLegs_RGB_10bit.cfg DucksTakeOff_RGB_16bit.cfg DucksTakeOff_RGB_16bit.cfg EBUGraphics_422_10bit.cfg EBUHorse_422_10bit.cfg EBUKidsSoccer_422_10bit.cfg EBULupoCandlelight_444_10bit.cfg EBULupoCandlelight_RGB_10bit.cfg EBURainFruits_444_10bit.cfg EBURainFruits_RGB_10bit+2MSB.cfg EBURainFruits_RGB_10bit+4MSB.cfg EBURainFruits_RGB_10bit+6MSB.cfg EBURainFruits_RGB_10bit.cfg EBUWaterRocksClose_422_10bit.cfg EncAdaptiveLoopFilter.cpp EncAdaptiveLoopFilter.h EncApp.cpp EncApp.h EncAppCfg.cpp EncAppCfg.h EncCfg.h EncCfgParam.h EncCu.cpp EncCu.h EncGOP.cpp EncGOP.h EncHRD.cpp EncHRD.h EncLib.cpp EncLib.h EncLibCommon.cpp EncLibCommon.h encmain.cpp EncModeCtrl.cpp EncModeCtrl.h encode.shl encodeCommand.sh encoder_intra_vtm.cfg encoder_lowdelay_P_vtm.cfg encoder_lowdelay_P_vtm_perf.cfg encoder_lowdelay_vtm.cfg encoder_lowdelay_vtm_perf.cfg encoder_randomaccess_vtm.cfg encoder_randomaccess_vtm_gop16.cfg encoder_randomaccess_vtm_perf.cfg EncReshape.cpp EncReshape.h EncSampleAdaptiveOffset.cpp EncSampleAdaptiveOffset.h EncSlice.cpp EncSlice.h EncTemporalFilter.cpp EncTemporalFilter.h entropy_coding_synchronization.cfg equirectangular.cfg error.py ExtractBitrates.cpp ExtractBitrates.h ExtractBitratesMain.cpp film_grain_characteristics_analysis.cfg film_grain_characterstics.cfg FlyingGraphics_444.cfg FlyingGraphics_RGB.cfg FoodMarket4.cfg formatGBR.cfg formatRGB.cfg FourPeople.cfg frame_packing.cfg FruitStall_RGB_16bit.cfg generalized_cubemap_projection.cfg GlassHalf_444_10bit.cfg GlassHalf_RGB.cfg gop-structure-example.pdf gopBasedRPR.cfg greenMetadataSEI.cfg GuessLambdaModifiers.cpp GuessLambdaModifiers.h GuessLambdaModifiersMain.cpp H1_BalloonFestival.cfg H1_BalloonFestival_420_12bit.cfg H1_BalloonFestival_422_12bit.cfg H1_BalloonFestival_444_12bit.cfg H1_Cosmos1_TreeTrunk.cfg H1_EBU_Hurdles.cfg H1_EBU_Starting.cfg H1_FireEater2_420_12bit.cfg H1_FireEater2_422_12bit.cfg H1_FireEater2_444_12bit.cfg H1_Hurdles_420_12bit.cfg H1_Hurdles_422_12bit.cfg H1_Hurdles_444_12bit.cfg H1_Market.cfg H1_Market3_420_12bit.cfg H1_Market3_422_12bit.cfg H1_Market3_444_12bit.cfg H1_ShowGirl.cfg H1_Starting_420_12bit.cfg H1_Starting_422_12bit.cfg H1_Starting_444_12bit.cfg H1_SunRise.cfg H2_DayStreet2.cfg H2_DayStreet_420_12bit.cfg H2_DayStreet_422_12bit.cfg H2_DayStreet_444_12bit.cfg H2_FlyingBirds3.cfg H2_NightStreet_420_12bit.cfg H2_NightStreet_422_12bit.cfg H2_NightStreet_444_12bit.cfg H2_PeopleInShoppingCenter2.cfg H2_PeopleInShoppingCenter_420_12bit.cfg H2_PeopleInShoppingCenter_422_12bit.cfg H2_PeopleInShoppingCenter_444_12bit.cfg H2_StainedGlass_420_12bit.cfg H2_StainedGlass_422_12bit.cfg H2_StainedGlass_444_12bit.cfg H2_SunsetBeach3.cfg Hash.cpp Hash.h hbd.cfg Head_400_16bit.cfg HRD.cpp HRD.h i686-w64-mingw32-gcc-posix-ubuntu1604.cmake IbcHashMap.cpp IbcHashMap.h IbcHashmap_sse42.cpp IbcHashMapX86.h InitX86.cpp InterpolationFilter.cpp InterpolationFilter.h InterpolationFilter_avx.cpp InterpolationFilter_avx2.cpp InterpolationFilter_sse41.cpp InterpolationFilterX86.h InterPrediction.cpp InterPrediction.h InterSearch.cpp InterSearch.h InToTree_RGB_16bit.cfg InToTree_RGB_16bit.cfg IntraPrediction.cpp IntraPrediction.h IntraSearch.cpp IntraSearch.h Johnny.cfg JVET-AF0088-v1.docx jvetdoc.cls Kimono.cfg Kimono_422_10bit.cfg Kimono_444_10bit.cfg Kimono_RGB_10bit+2MSB.cfg Kimono_RGB_10bit+4MSB.cfg Kimono_RGB_10bit+6MSB.cfg Kimono_RGB_10bit.cfg KristenAndSara.cfg libmd5.cpp libmd5.h lldbinit-CMakeBuild.in lldbinit-NextSoftware.in lldbinit_update-in.cmake lldbinit_update-in.cmake LongRunShort_400_12bit.cfg lossless.cfg lossless444.cfg lossless_mixed.cfg losslessRGB.cfg mainpage.h Makefile Makefile makefile manifest_prefix.cfg Map_444.cfg Map_GBR.cfg Map_RGB.cfg MarketPlace.cfg mask_info_0.txt mask_info_0.txt mask_info_0.txt mask_info_1.txt mask_info_1.txt mask_info_1.txt mask_info_2.txt mask_info_2.txt mask_info_2.txt mask_info_3.txt mask_info_3.txt mask_info_3.txt mask_info_4.txt mask_info_4.txt mask_info_4.txt mastering_display_colour_volume.cfg MatrixIntraPrediction.cpp MatrixIntraPrediction.h MCTS.cpp MCTS.h MD5.h MipData.h MissionControl2_444.cfg MissionControl2_RGB.cfg MissionControl3_444.cfg MissionControl3_RGB.cfg MotionInfo.h multiview_acquisition_info.cfg multiview_view_position.cfg Mv.cpp Mv.h NAL.h NALread.cpp NALread.h NALwrite.cpp NALwrite.h NebutaFestival_10bit.cfg neural_network_post_filter_activation.cfg neural_network_post_filter_characteristics.cfg NextSoftware-CommonModel.emf NextSoftware-CommonModel.vsd NextSoftware-Data Structures.pdf NextSoftware-Data Structures.pptx NextSoftware.py OldTownCross_RGB_10bit.cfg OldTownCross_RGB_16bit.cfg OldTownCross_RGB_16bit.cfg omni_viewport.cfg parameter_sets_inclusion_indication.cfg ParameterSetManager.cpp ParameterSetManager.h parcat.cpp ParkJoy_RGB_16bit.cfg ParkJoy_RGB_16bit.cfg ParkRunning3.cfg ParkScene.cfg ParkScene_RGB_10bit.cfg PartyScene.cfg PCBLayout_444.cfg PCBLayout_GBR.cfg PCBLayout_RGB.cfg PeopleOnStreet.cfg phase_indication.cfg phase_indication_rpr1.5.cfg phase_indication_rpr2.0.cfg Picture.cpp Picture.h PictureParameterSet.cpp PictureParameterSet.h PicYuvMD5.cpp post_filter_hint_info.cfg ppt_doc_xls_444.cfg ppt_doc_xls_GBR.cfg ppt_doc_xls_RGB.cfg ProfileTierLevel.cpp ProfileTierLevel.h program_options_lite.cpp program_options_lite.h Programming_444.cfg Programming_GBR.cfg Programming_RGB.cfg pyuv_format.pdf Quant.cpp Quant.h QuantRDOQ.cpp QuantRDOQ.h QuickStartGuide.pdf RaceHorses.cfg RaceHorsesC.cfg raceHorsesShot2MotionVectors.png raceHorsesShot3SkipFlag.png raster_slice.cfg raster_slice_1_slice_per_tile.cfg RateCtrl.cpp RateCtrl.h RdCost.cpp RdCost.h RdCost_avx.cpp RdCost_avx2.cpp RdCost_sse41.cpp RdCostWeightPrediction.cpp RdCostWeightPrediction.h RdCostX86.h README.md readme.md readMe.txt README_software-manual.txt rect_slice_classB.cfg rect_slice_fixed_size.cfg region_wise_packing.cfg Reshape.cpp Reshape.h RitualDance.cfg Robot_444.cfg Robot_RGB.cfg Rom.cpp Rom.h RomLFNST.cpp RomTr.cpp rpr_no_subpic_single_slice_per_subpic.cfg RuntimeError.h sample_aspect_ratio.cfg sample_scaling_list.cfg sample_scaling_list_file.txt SampleAdaptiveOffset.cpp SampleAdaptiveOffset.h scalability_dimension_info.cfg scale1.5x.cfg scale2.0x.cfg Seeking_422_10bit.cfg SEI.cpp SEI.h sei_processing_order.cfg SEIColourTransform.cpp SEIColourTransform.h seiCti_hdrPq_to_sdr1.cfg seiCti_hdrPq_to_sdr2.cfg seiCti_sdr_to_hdrPq1.cfg SEIEncoder.cpp SEIEncoder.h SEIFilmGrainAnalyzer.cpp SEIFilmGrainAnalyzer.h SEIFilmGrainApp.cpp SEIFilmGrainApp.h SEIFilmGrainAppCfg.cpp SEIFilmGrainAppCfg.h SEIFilmGrainMain.cpp SEIFilmGrainSynthesizer.cpp SEIFilmGrainSynthesizer.h SEINeuralNetworkPostFiltering.cpp SEINeuralNetworkPostFiltering.h SEIread.cpp SEIread.h SEIRemovalApp.cpp SEIRemovalApp.h SEIRemovalAppCfg.cpp SEIRemovalAppCfg.h seiremovalmain.cpp SEIwrite.cpp SEIwrite.h SequenceParameterSet.cpp SequenceParameterSet.h shutter_interval_info.cfg shutter_interval_info_fix.cfg shutter_interval_info_mul_120fps_SA_180.cfg shutter_interval_info_mul_120fps_SA_180.cfg shutter_interval_info_mul_120fps_SA_360.cfg shutter_interval_info_mul_120fps_SA_360.cfg shutter_interval_info_mul_120fps_SA_90.cfg shutter_interval_info_mul_120fps_SA_90.cfg shutter_interval_info_mul_60fps_SA_180.cfg shutter_interval_info_mul_60fps_SA_180.cfg shutter_interval_info_mul_60fps_SA_360.cfg shutter_interval_info_mul_60fps_SA_360.cfg shutter_interval_info_mul_60fps_SA_90.cfg shutter_interval_info_mul_60fps_SA_90.cfg shutter_interval_info_mul_gop16.cfg shutter_interval_info_mul_gop32.cfg Slice.cpp Slice.h SlideEditing.cfg SlideShow.cfg SlideShow_444.cfg SlideShow_RGB.cfg SocialNetworkMap_444.cfg SocialNetworkMap_RGB.cfg software-manual.pdf software-manual.tex sphere_rotation.cfg static_vector.natvis SteamLocomotiveTrain_10bit.cfg StreamMergeApp.cpp StreamMergeApp.h StreamMergeAppCfg.cpp StreamMergeAppCfg.h StreamMergeMain.cpp SubpicconfSample.txt SubpicMergeApp.cpp SubpicMergeApp.h SubpicMergeMain.cpp subpicture_3_slice_2_tile.cfg subpicture_3_slice_2_tile_1_slice_per_subpic.cfg subpicture_4_slice_2_hor_subpic.cfg subpicture_4_slice_2_hor_subpic_same_size_flag.cfg subpicture_4_slice_2_tiles_4_subpic.cfg subpicture_4_slice_2_ver_subpic.cfg subpicture_8_slice_12_tile_2_subpic.cfg subpicture_level.cfg system.py Tango2.cfg targetBitrates.sh timing.cfg Traffic.cfg Traffic_422_10bit.cfg Traffic_444_10bit.cfg Traffic_RGB_12bit.cfg TrQuant.cpp TrQuant.h TrQuant_EMT.cpp TrQuant_EMT.h TwistTunnel_444.cfg TwistTunnel_GBR.cfg TwistTunnel_RGB.cfg two_layers.cfg two_layers_ELonlyILP.cfg two_layers_independent.cfg two_layers_max_tid_ref_pic.cfg two_layers_multi_profiles.cfg TypeDef.h Unit.cpp Unit.h UnitPartitioner.cpp UnitPartitioner.h UnitTools.cpp UnitTools.h util.py vcsutil.py VenueVu_444_10bit.cfg VenueVu_GBR.cfg VenueVu_RGB.cfg ver.py version.h VideoConferencingDocSharing_444.cfg VideoConferencingDocSharing_GBR.cfg VideoConferencingDocSharing_RGB.cfg VideoIOYuv.cpp VideoIOYuv.h VideoParameterSet.cpp VideoParameterSet.h Vidyo1.cfg Vidyo3.cfg Vidyo4.cfg VLCReader.cpp VLCReader.h VLCWriter.cpp VLCWriter.h VTM_encoder_lowdelay_field_GOP16.cfg VTM_encoder_lowdelay_field_GOP8.cfg VTM_encoder_randomaccess_field_GOP16.cfg VTM_encoder_randomaccess_field_GOP32.cfg vui_HD.cfg vui_UHD_PQ.cfg Web_444.cfg Web_RGB.cfg WebBrowsing_444.cfg WebBrowsing_GBR.cfg WebBrowsing_RGB.cfg weighted_pred_B.cfg weighted_pred_P.cfg WeightPredAnalysis.cpp WeightPredAnalysis.h WeightPrediction.cpp WeightPrediction.h WordEditing_444.cfg WordEditing_GBR.cfg WordEditing_RGB.cfg x86_64-w64-mingw32-gcc-posix-ubuntu1604.cmake x86_64-w64-mingw32-gcc-posix-ubuntu1804.cmake yuv444.cfg YUView.png
Decisions
It was agreed that the changes 1-4 are appropriate, and shall be integrated into the next TuC
Citation