<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Serdar Anıl Demirbaş</title><description>Latest writing</description><link>https://www.serdaranildemirbas.site/</link><item><title>Thermal imaging for detection work: what changes when light becomes heat</title><link>https://www.serdaranildemirbas.site/blog/thermal-imaging-basics/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/thermal-imaging-basics/</guid><description>A thermal camera does not see light, it sees temperature. That breaks half of your RGB intuition. What I had to relearn to do detection on the thermal channel.</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate></item><item><title>The gap between the notebook and the board</title><link>https://www.serdaranildemirbas.site/blog/the-gap-between-the-notebook-and-the-board/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/the-gap-between-the-notebook-and-the-board/</guid><description>A detector that scores well on a workstation and fails on an embedded target is usually not a model problem. Four places the gap actually opens up.</description><pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Why I labelled it a shot candidate and not a goal</title><link>https://www.serdaranildemirbas.site/blog/why-i-labelled-it-shot-candidate/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/why-i-labelled-it-shot-candidate/</guid><description>Building event detection from ball trajectory on uncalibrated footage, and why naming the limitation in the output was cheaper than pretending it was not there.</description><pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate></item><item><title>NMS and confidence thresholds: the last, underrated step of detection</title><link>https://www.serdaranildemirbas.site/blog/nms-and-confidence-thresholds/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/nms-and-confidence-thresholds/</guid><description>Your detector outputs thousands of candidate boxes per frame. Two cheap post-processing choices decide what anyone actually sees, and they get far less attention than they deserve.</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate></item><item><title>The dataset decisions that decide your mAP before training starts</title><link>https://www.serdaranildemirbas.site/blog/dataset-decisions-that-decide-your-map/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/dataset-decisions-that-decide-your-map/</guid><description>Tiling overlap, leakage-free splits and class-balanced augmentation did more for our aerial detector than any hyperparameter. Here is what we changed and why.</description><pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Image stitching and orthomosaics: turning frames into a map</title><link>https://www.serdaranildemirbas.site/blog/image-stitching-orthomosaics/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/image-stitching-orthomosaics/</guid><description>How a few hundred overlapping drone frames become one image, why a panorama is not a map, and the flight-planning decisions that matter more than the algorithm.</description><pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Camera calibration and lens distortion: why your straight lines bend</title><link>https://www.serdaranildemirbas.site/blog/camera-calibration-distortion/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/camera-calibration-distortion/</guid><description>The runway is straight, the image says otherwise. What calibration actually estimates, how I run the checkerboard ritual, and where uncorrected distortion bites a mapping pipeline.</description><pubDate>Tue, 16 Jun 2026 00:00:00 GMT</pubDate></item><item><title>ROS 2 for vision systems: nodes, topics and what actually matters</title><link>https://www.serdaranildemirbas.site/blog/ros2-for-vision-systems/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/ros2-for-vision-systems/</guid><description>Notes from putting ROS 2 on the table while designing a SUAS mission architecture: what nodes, topics and QoS buy a vision pipeline, and when a small system does not need them.</description><pubDate>Tue, 02 Jun 2026 00:00:00 GMT</pubDate></item><item><title>The Kalman filter without the matrix fog</title><link>https://www.serdaranildemirbas.site/blog/kalman-filter-intuition/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/kalman-filter-intuition/</guid><description>Every tracker I have shipped sits on a Kalman filter, and none of them needed the full matrix derivation to work. Here is the intuition that actually matters.</description><pubDate>Tue, 19 May 2026 00:00:00 GMT</pubDate></item><item><title>Object tracking and ByteTrack: keeping identity across frames</title><link>https://www.serdaranildemirbas.site/blog/object-tracking-and-bytetrack/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/object-tracking-and-bytetrack/</guid><description>A detector tells you what is in a frame. Tracking tells you it is the same thing as last frame. Why that matters, and why ByteTrack&apos;s one idea works so well.</description><pubDate>Tue, 05 May 2026 00:00:00 GMT</pubDate></item><item><title>TensorRT and FP16: getting a trained model onto real hardware</title><link>https://www.serdaranildemirbas.site/blog/tensorrt-fp16-deployment/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/tensorrt-fp16-deployment/</guid><description>A trained checkpoint is not a product. What TensorRT actually does, why FP16 is usually free, and the checks I run before I trust an engine on a Jetson.</description><pubDate>Tue, 07 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Detecting animal disease with computer vision: a field worth building in</title><link>https://www.serdaranildemirbas.site/blog/animal-disease-detection-with-cv/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/animal-disease-detection-with-cv/</guid><description>Every hard problem in livestock health monitoring is one I already work on: tracking, thermal imaging, ugly data, edge deployment. Notes on why this field deserves more engineers.</description><pubDate>Tue, 10 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Can you do computer vision on a VR headset?</title><link>https://www.serdaranildemirbas.site/blog/computer-vision-on-vr-devices/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/computer-vision-on-vr-devices/</guid><description>A standalone headset already runs more computer vision than most robots. The real question is how much of that your own code gets to use, and what it costs.</description><pubDate>Tue, 10 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Developing for Oculus/Meta Quest: notes from shipped projects</title><link>https://www.serdaranildemirbas.site/blog/developing-for-oculus-quest/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/developing-for-oculus-quest/</guid><description>The Quest is a mobile chip strapped to your face. Frame rate is a contract, the editor lies, and comfort cannot be patched in later. Notes from shipped training projects.</description><pubDate>Tue, 13 Jan 2026 00:00:00 GMT</pubDate></item><item><title>VR, AR, XR: what the letters mean when you build for them</title><link>https://www.serdaranildemirbas.site/blog/vr-ar-xr-differences/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/vr-ar-xr-differences/</guid><description>In meetings the three letters get used interchangeably. In the engine they decide who renders the world, what your frame budget is and what failure looks like.</description><pubDate>Tue, 09 Dec 2025 00:00:00 GMT</pubDate></item><item><title>OpenMP vs CUDA: two kinds of parallel, one real-time budget</title><link>https://www.serdaranildemirbas.site/blog/openmp-vs-cuda/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/openmp-vs-cuda/</guid><description>I use OpenMP and CUDA in the same real-time vision pipeline. Which one fits which job, why data movement is the real bill, and who actually eats your frame budget.</description><pubDate>Tue, 04 Nov 2025 00:00:00 GMT</pubDate></item><item><title>CUDA, CUDA C and the OpenCV CUDA module: which one are you actually using?</title><link>https://www.serdaranildemirbas.site/blog/cuda-cuda-c-opencv/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/cuda-cuda-c-opencv/</guid><description>Three different things share the CUDA name and people mix them up daily. The platform, the language and the library have different costs, and picking the wrong layer wastes weeks.</description><pubDate>Tue, 14 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Setting up an NVIDIA Jetson: JetPack, first boot and the road to TensorRT</title><link>https://www.serdaranildemirbas.site/blog/jetson-setup-jetpack/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/jetson-setup-jetpack/</guid><description>Every Jetson project I have worked on lost days to setup before it processed a single frame. Here is the order that stops the leak: version choice, power mode, the right wheels, then TensorRT.</description><pubDate>Tue, 16 Sep 2025 00:00:00 GMT</pubDate></item><item><title>C++ multithreading for real-time pipelines: the parts that bite</title><link>https://www.serdaranildemirbas.site/blog/cpp-multithreading-for-realtime/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/cpp-multithreading-for-realtime/</guid><description>Capture, inference, tracking and a Qt interface, all sharing one machine. What I learned about threads from keeping a detection pipeline honest under a real-time budget.</description><pubDate>Tue, 12 Aug 2025 00:00:00 GMT</pubDate></item><item><title>What the FFT actually does, and what it does for images</title><link>https://www.serdaranildemirbas.site/blog/fft-for-image-processing/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/fft-for-image-processing/</guid><description>The Fourier transform is not a formula to memorise, it is a change of viewpoint. What that viewpoint buys you in a real vision pipeline, and where it does not help at all.</description><pubDate>Tue, 08 Jul 2025 00:00:00 GMT</pubDate></item><item><title>The image processing fundamentals I still use every week</title><link>https://www.serdaranildemirbas.site/blog/image-processing-fundamentals/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/image-processing-fundamentals/</guid><description>Thresholding, morphology and contours built my first robot, and they still carry my detection pipelines. A tour of the classics that refuse to retire.</description><pubDate>Tue, 10 Jun 2025 00:00:00 GMT</pubDate></item><item><title>Git and GitHub: the five habits that actually matter</title><link>https://www.serdaranildemirbas.site/blog/git-and-github-for-engineers/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/git-and-github-for-engineers/</guid><description>Not forty commands. Five habits: commit messages that record why, one branch per experiment, data out of the repo, reading your own diff, and tagging what ships.</description><pubDate>Tue, 13 May 2025 00:00:00 GMT</pubDate></item><item><title>Building operator interfaces in Qt: lessons from the field</title><link>https://www.serdaranildemirbas.site/blog/qt-operator-interfaces/</link><guid isPermaLink="true">https://www.serdaranildemirbas.site/blog/qt-operator-interfaces/</guid><description>The model gets the attention, but the operator screen decides whether the system is usable. What I learned building Qt interfaces for real-time tracking systems.</description><pubDate>Tue, 15 Apr 2025 00:00:00 GMT</pubDate></item></channel></rss>