{
  "id": 671062,
  "title": "Bronze Medal | DinoV3",
  "url": "/competitions/csiro-biomass/discussion/671062",
  "author_name": "Hanif Noer Rofiq",
  "post_date": "2026-01-31T00:43:21.842000",
  "votes": 1,
  "comment_count": 0,
  "views": 0,
  "content": "<p><strong>Overview</strong>\nI used a tag team approach for this biomass challenge. DINOv3 did the heavy lifting as the primary model, while SigLIP acted as a supporting engine to give the predictions a sanity check boost. I topped it off with a bit of biological math so the outputs stayed consistent with how biomass components should add up in the real world.</p>\n<p><strong>Models</strong>\nDINOv3 (primary model)\nThis was the main model. It processed each pasture image in two halves and then fused the information with a mamba layer to form a single understanding of the full scene. It was strong at capturing fine-grained texture cues, which matters a lot for separating subtle biomass differences.</p>\n<p>SigLIP (support model)\nInstead of full training, I used SigLIP as a semantic feature extractor. The goal was to capture high-level signals, for example whether the image looks closer to bare ground, sparse pasture, or lush green. I did this by comparing image embeddings to text prompts, then using those similarity scores as extra guidance.</p>\n<p><strong>How they were combined</strong>\n<em>Weighted mix</em>\nThe final prediction leaned heavily toward DINOv3, with SigLIP contributing a smaller share mainly to stabilize edge cases and reduce obviously odd predictions.</p>\n<p><em>Clover handled by DINOv3</em>\nDINOv3 was consistently the most reliable for clover, so I let it handle clover predictions directly instead of mixing it with the supporting branch.</p>\n<p><em>Post-processing for biological consistency</em>\nModels can sometimes output physically inconsistent numbers, like components exceeding the total. I applied simple constraint-based post-processing to enforce mass-balance relationships, so Green plus Clover matches GDM, and GDM plus Dead matches Total. In practice, this step nudges predictions into a biologically valid space without changing them aggressively.</p>\n<p><strong>Main takeaway</strong>\nWhen the backbone is strong and local validation is consistent, it is worth trusting the primary model more.</p>",
  "messages": [
    {
      "id": 3399552,
      "postDate": "2026-01-31T00:43:21.843Z",
      "content": "<p><strong>Overview</strong>\nI used a tag team approach for this biomass challenge. DINOv3 did the heavy lifting as the primary model, while SigLIP acted as a supporting engine to give the predictions a sanity check boost. I topped it off with a bit of biological math so the outputs stayed consistent with how biomass components should add up in the real world.</p>\n<p><strong>Models</strong>\nDINOv3 (primary model)\nThis was the main model. It processed each pasture image in two halves and then fused the information with a mamba layer to form a single understanding of the full scene. It was strong at capturing fine-grained texture cues, which matters a lot for separating subtle biomass differences.</p>\n<p>SigLIP (support model)\nInstead of full training, I used SigLIP as a semantic feature extractor. The goal was to capture high-level signals, for example whether the image looks closer to bare ground, sparse pasture, or lush green. I did this by comparing image embeddings to text prompts, then using those similarity scores as extra guidance.</p>\n<p><strong>How they were combined</strong>\n<em>Weighted mix</em>\nThe final prediction leaned heavily toward DINOv3, with SigLIP contributing a smaller share mainly to stabilize edge cases and reduce obviously odd predictions.</p>\n<p><em>Clover handled by DINOv3</em>\nDINOv3 was consistently the most reliable for clover, so I let it handle clover predictions directly instead of mixing it with the supporting branch.</p>\n<p><em>Post-processing for biological consistency</em>\nModels can sometimes output physically inconsistent numbers, like components exceeding the total. I applied simple constraint-based post-processing to enforce mass-balance relationships, so Green plus Clover matches GDM, and GDM plus Dead matches Total. In practice, this step nudges predictions into a biologically valid space without changing them aggressively.</p>\n<p><strong>Main takeaway</strong>\nWhen the backbone is strong and local validation is consistent, it is worth trusting the primary model more.</p>",
      "rawMarkdown": "**Overview**\nI used a tag team approach for this biomass challenge. DINOv3 did the heavy lifting as the primary model, while SigLIP acted as a supporting engine to give the predictions a sanity check boost. I topped it off with a bit of biological math so the outputs stayed consistent with how biomass components should add up in the real world.\n\n**Models**\nDINOv3 (primary model)\nThis was the main model. It processed each pasture image in two halves and then fused the information with a mamba layer to form a single understanding of the full scene. It was strong at capturing fine-grained texture cues, which matters a lot for separating subtle biomass differences.\n\nSigLIP (support model)\nInstead of full training, I used SigLIP as a semantic feature extractor. The goal was to capture high-level signals, for example whether the image looks closer to bare ground, sparse pasture, or lush green. I did this by comparing image embeddings to text prompts, then using those similarity scores as extra guidance.\n\n**How they were combined**\n*Weighted mix*\nThe final prediction leaned heavily toward DINOv3, with SigLIP contributing a smaller share mainly to stabilize edge cases and reduce obviously odd predictions.\n\n*Clover handled by DINOv3*\nDINOv3 was consistently the most reliable for clover, so I let it handle clover predictions directly instead of mixing it with the supporting branch.\n\n*Post-processing for biological consistency*\nModels can sometimes output physically inconsistent numbers, like components exceeding the total. I applied simple constraint-based post-processing to enforce mass-balance relationships, so Green plus Clover matches GDM, and GDM plus Dead matches Total. In practice, this step nudges predictions into a biologically valid space without changing them aggressively.\n\n**Main takeaway**\nWhen the backbone is strong and local validation is consistent, it is worth trusting the primary model more.",
      "votes": 1
    }
  ],
  "comments": [],
  "raw_markdown_by_id": {
    "3399552": "**Overview**\nI used a tag team approach for this biomass challenge. DINOv3 did the heavy lifting as the primary model, while SigLIP acted as a supporting engine to give the predictions a sanity check boost. I topped it off with a bit of biological math so the outputs stayed consistent with how biomass components should add up in the real world.\n\n**Models**\nDINOv3 (primary model)\nThis was the main model. It processed each pasture image in two halves and then fused the information with a mamba layer to form a single understanding of the full scene. It was strong at capturing fine-grained texture cues, which matters a lot for separating subtle biomass differences.\n\nSigLIP (support model)\nInstead of full training, I used SigLIP as a semantic feature extractor. The goal was to capture high-level signals, for example whether the image looks closer to bare ground, sparse pasture, or lush green. I did this by comparing image embeddings to text prompts, then using those similarity scores as extra guidance.\n\n**How they were combined**\n*Weighted mix*\nThe final prediction leaned heavily toward DINOv3, with SigLIP contributing a smaller share mainly to stabilize edge cases and reduce obviously odd predictions.\n\n*Clover handled by DINOv3*\nDINOv3 was consistently the most reliable for clover, so I let it handle clover predictions directly instead of mixing it with the supporting branch.\n\n*Post-processing for biological consistency*\nModels can sometimes output physically inconsistent numbers, like components exceeding the total. I applied simple constraint-based post-processing to enforce mass-balance relationships, so Green plus Clover matches GDM, and GDM plus Dead matches Total. In practice, this step nudges predictions into a biologically valid space without changing them aggressively.\n\n**Main takeaway**\nWhen the backbone is strong and local validation is consistent, it is worth trusting the primary model more."
  }
}