{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/arxiv-2604-16086","title":"Stylistic-STORM (ST-STORM) : Perceiving the Semantic Nature of Appearance","arxiv_id":"2604.16086","date":"2026-04-17","proceeding":null,"authors":["Hamed Ouattara","Pierre Duthon","Pascal Houssam Salmane","Frédéric Bernardin","Omar Ait Aider"],"abstract":"One of the dominant paradigms in self-supervised learning (SSL), illustrated by MoCo or DINO, aims to produce robust representations by capturing features that are insensitive to certain image transformations such as illumination, or geometric changes. This strategy is appropriate when the objective is to recognize objects independently of their appearance. However, it becomes counterproductive as soon as appearance itself constitutes the discriminative signal. In weather analysis, for example, rain streaks, snow granularity, atmospheric scattering, as well as reflections and halos, are not noise: they carry the essential information. In critical applications such as autonomous driving, ignoring these cues is risky, since grip and visibility depend directly on ground conditions and atmospheric conditions. We introduce ST-STORM, a hybrid SSL framework that treats appearance (style) as a semantic modality to be disentangled from content. Our architecture explicitly separates two latent streams, regulated by gating mechanisms. The Content branch aims at a stable semantic representation through a JEPA scheme coupled with a contrastive objective, promoting invariance to appearance variations. In parallel, the Style branch is constrained to capture appearance signatures (textures, contrasts, scattering) through feature prediction and reconstruction under an adversarial constraint. We evaluate ST-STORM on several tasks, including object classification (ImageNet-1K), fine-grained weather characterization, and melanoma detection (ISIC 2024 Challenge). The results show that the Style branch effectively isolates complex appearance phenomena (F1=97% on Multi-Weather and F1=94% on ISIC 2024 with 10% labeled data), without degrading the semantic performance (F1=80% on ImageNet-1K) of the Content branch, and improves the preservation of critical appearance","url_abs":"https://arxiv.org/abs/2604.16086","url_pdf":"https://arxiv.org/pdf/2604.16086","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2604.16086","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2604.16086"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/Hamedkiri/RT-STORM-V2","reach":null}],"summary":{"ran":5,"ran_draft_wrong":7,"unverified":1},"by_repo_kind":{"found_in_text":{"samples":13,"ran":12,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":13,"samples":[{"code_sha256_prefix":"309fbf3960018a7e","entry":"MLP","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"309fbf3960018a7e"}},{"code_sha256_prefix":"8109216719701d7e","entry":"ResNetBackbone","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"8109216719701d7e"}},{"code_sha256_prefix":"081d2c8aacc53959","entry":"SemAugConfig","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"081d2c8aacc53959"}},{"code_sha256_prefix":"95dfe6d768766f2c","entry":"TokenJEPA","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"95dfe6d768766f2c"}},{"code_sha256_prefix":"701ea0fb635c7bf6","entry":"_BatchAugmenter","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"701ea0fb635c7bf6"}},{"code_sha256_prefix":"ec68c281bd6b07b7","entry":"_imagenet_norm","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ec68c281bd6b07b7"}},{"code_sha256_prefix":"021137c751df2735","entry":"_l2n","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"021137c751df2735"}},{"code_sha256_prefix":"2107e587dce2c609","entry":"_remap_resnet_keys_to_wrapper","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"2107e587dce2c609"}},{"code_sha256_prefix":"4b5026d1866b3c6b","entry":"_select_encoder_subdict","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"4b5026d1866b3c6b"}},{"code_sha256_prefix":"066cb20f7001e456","entry":"_strip_prefixes","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"066cb20f7001e456"}},{"code_sha256_prefix":"5a083d84445a8dfc","entry":"_to_01","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5a083d84445a8dfc"}},{"code_sha256_prefix":"780416a013ab6ade","entry":"_unwrap_checkpoint","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"780416a013ab6ade"}},{"code_sha256_prefix":"d69fe3618921eed7","entry":"SemanticMoCoJEPA","repo":"Hamedkiri/RT-STORM-V2","repo_kind":"found_in_text","path":"models/semantic_moco_jepa.py","file_url":"https://github.com/Hamedkiri/RT-STORM-V2/blob/HEAD/models/semantic_moco_jepa.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d69fe3618921eed7"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.LG","source":"arxiv_2026.jsonl"},"syntology_extracted_results":null}