1<!doctype html> 2<html lang="en"> 3<head> 4<meta charset="utf-8"> 5<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"> 6<title>David Serrano-Lozano</title> 7<meta name="description" content="David Serrano-Lozano, PhD student at the Computer Vision Center (UAB), working on controllable color and illumination editing."> 8<meta property="og:title" content="David Serrano-Lozano"> 9<meta property="og:description" content="PhD student at the Computer Vision Center (UAB). Controllable color and illumination editing."> 10<meta property="og:image" content="https://davidserra9.github.io/assets/hero/photo.jpg"> 11<meta property="og:url" content="https://davidserra9.github.io/"> 12<meta name="twitter:card" content="summary"> 13<link rel="icon" href="assets/favicon.svg" type="image/svg+xml"> 14<link rel="preconnect" href="https://fonts.googleapis.com"> 15<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 16<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Archivo:ital,wdth,wght@0,62..125,100..900;1,62..125,100..900&family=IBM+Plex+Mono:wght@400;500&display=swap"> 17<link rel="stylesheet" href="assets/css/site.css"> 18</head> 19<body> 20 21<header class="top" id="topbar"> 22 <div class="wrap top-inner"> 23 <a class="top-name" href="#top">David Serrano-Lozano</a> 24 <nav class="top-nav" aria-label="Sections"> 25 <a href="#news">News</a> 26 <a href="#publications">Publications</a> 27 <a class="cv" href="assets/pdf/DavidSerranoLozano_CV.pdf" target="_blank" rel="noopener"> 28 <svg viewBox="0 0 16 16" aria-hidden="true"><path d="M8 2v8m0 0-3.2-3.2M8 10l3.2-3.2M3 13.5h10" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg> 29 CV 30 </a> 31 </nav> 32 </div> 33</header> 34 35<main id="top" class="wrap"> 36 37 <section class="hero" id="play" data-mode="us"> 38 39 <div class="play-col"> 40 <div class="modes" role="tablist" aria-label="Edit the photo with"> 41 <button type="button" role="tab" id="tab-us" aria-controls="panel-us" aria-selected="true" data-mode="us">UniSlider</button> 42 <button type="button" role="tab" id="tab-sl" aria-controls="panel-sl" aria-selected="false" data-mode="sl" tabindex="-1">SyncLight</button> 43 <button type="button" role="tab" id="tab-nc" aria-controls="panel-nc" aria-selected="false" data-mode="nc" tabindex="-1">NamedCurves</button> 44 </div> 45 46 <figure class="photo"> 47 <div class="stage" id="stage"> 48 <img class="layer" id="frame-a" alt="David posing like a T-Rex next to a Tyrannosaurus skeleton at the American Museum of Natural History" src="assets/hero/photo.jpg" width="720" height="869"> 49 <canvas class="layer" id="fx-canvas" width="624" height="768" aria-hidden="true"></canvas> 50 <canvas class="layer" id="nc-canvas" aria-label="Photo edited with NamedCurves"></canvas> 51 <img class="layer" id="original" alt="" aria-hidden="true" src="assets/hero/photo.jpg"> 52 <button type="button" class="hold" id="hold" aria-label="Hold to show the original photo">Hold for original</button> 53 <span class="standin" id="standin" hidden>Stand-in frames</span> 54 </div> 55 <figcaption><span id="cap-text"></span> <a id="cap-link" href="#" target="_blank" rel="noopener">project â</a></figcaption> 56 </figure> 57 58 <div class="panels"> 59 <!-- NamedCurves --> 60 <div class="panel is-off" id="panel-nc" role="tabpanel" aria-labelledby="tab-nc" inert> 61 <div class="nc-body"> 62 <div class="nc-left"> 63 <div class="cats" id="cats" role="radiogroup" aria-label="Color name"></div> 64 <p class="cat-name" id="cat-name" aria-live="polite"></p> 65 </div> 66 <div class="curve-row"> 67 <canvas id="curve" tabindex="0" aria-label="Tone curve for the selected color name. Drag a point, or use the arrow keys."></canvas> 68 <div class="chan" id="chan" role="radiogroup" aria-label="Channel"> 69 <button type="button" role="radio" aria-checked="true" data-ch="rgb">RGB</button> 70 <button type="button" role="radio" aria-checked="false" data-ch="0">R</button> 71 <button type="button" role="radio" aria-checked="false" data-ch="1">G</button> 72 <button type="button" role="radio" aria-checked="false" data-ch="2">B</button> 73 </div> 74 </div> 75 <div class="nc-actions"> 76 <label class="toggle" title="Fade out the pixels that don't belong to the selected color name"><input type="checkbox" id="show-map"> <span>Show map</span></label> 77 <button type="button" class="textbtn" id="nc-reset">Reset</button> 78 <label class="textbtn upload"><input type="file" id="own-photo" accept="image/*"> <span>Try your photo</span></label> 79 <button type="button" class="textbtn" id="my-photo" hidden>Back to mine</button> 80 </div> 81 </div> 82 </div> 83 84 <!-- SyncLight --> 85 <div class="panel is-off" id="panel-sl" role="tabpanel" aria-labelledby="tab-sl" inert> 86 <div class="slider-row"> 87 <label for="sl-c">chromaticity</label> 88 <output id="sl-c-out" for="sl-c"><span class="dot" id="sl-dot"></span><span id="sl-c-name"></span></output> 89 <input type="range" id="sl-c" class="track-hue" min="0" max="6" step="1" value="1"> 90 </div> 91 <div class="slider-row"> 92 <label for="sl-i">intensity</label> 93 <output id="sl-i-out" for="sl-i"></output> 94 <input type="range" id="sl-i" class="track-int" min="0" max="4" step="1" value="4"> 95 </div> 96 </div> 97 98 <!-- UniSlider --> 99 <div class="panel" id="panel-us" role="tabpanel" aria-labelledby="tab-us"> 100 <div class="prompts" id="prompts" role="radiogroup" aria-label="Edit"></div> 101 <p class="prompt-box" id="us-prompt" aria-live="polite"><span class="prompt-label">prompt</span><span id="us-prompt-text"></span></p> 102 <div class="slider-row"> 103 <label for="us-s">strength</label> 104 <input type="range" id="us-s" class="track-ticks" min="0" max="8" step="1" value="4"> 105 </div> 106 </div> 107 </div> 108 </div> 109 110 <div class="bio"> 111 <h1 id="name">David <span class="nowrap">Serrano-Lozano</span></h1> 112 <p class="role">PhD student · Computer Vision Center, UAB · Barcelona</p> 113 <p class="lead">Hola! I work on making current AI models more interactive.</p> 114 <p>I'm a PhD student at the <a href="https://www.cvc.uab.es/">Computer Vision Center</a>, <a href="https://www.uab.cat/">Universitat Autònoma de Barcelona</a>, advised by <a href="https://jvazquezcorral.github.io/">Javier Vazquez-Corral</a> and <a href="http://www.lherranz.org/">Luis Herranz</a>. My research is on controllable, interpretable image editing, especially of color and illumination. I've built methods that let users edit tone curves tied to color names (<a href="https://namedcurves.github.io/">NamedCurves</a>, ECCV 2024 & TPAMI 2026), correct the illumination in multi-illuminant scenes (<a href="https://revisitingmiwb.github.io/">MultiWB</a>, ICCV 2025), relight several images of a scene with a single edit (<a href="https://color.cvc.uab.cat/synclight/">SyncLight</a>, NeurIPS 2026), and use sliders where each step looks like the same amount of change (UniSlider, 2026). I also enjoy working on computational photography and robotics.</p> 115 <p>You can play with some of my methods on my photo.</p> 116 <p>I've been a research intern at <a href="https://research.adobe.com/">Adobe Research</a> London with <a href="https://afruehstueck.github.io/">Anna Frühstück</a>, and a visiting researcher in <a href="https://vision.gel.ulaval.ca/~jflalonde/">Jean-François Lalonde</a>'s lab at Université Laval, Quebec. I've also been lucky to work with <a href="https://www.eecs.yorku.ca/~mbrown/">Michael S. Brown</a>, <a href="https://csprofkgd.github.io/">Kosta Derpanis</a>, <a href="https://anandbhattad.github.io/">Anand Bhattad</a>, <a href="https://yannickhold.com/">Yannick Hold-Geoffroy</a>, <a href="https://iliyan.com/">Iliyan Georgiev</a> and <a href="https://www.duygu-ceylan.com/">Duygu Ceylan</a>.</p> 117 118 <ul class="contact"> 119 <li><a href="mailto:[email protected]">[email protected]</a></li> 120 <li><a href="https://scholar.google.com/citations?user=CWuYYNUAAAAJ">Google Scholar</a></li> 121 <li><a href="https://github.com/davidserra9">GitHub</a></li> 122 <li><a href="https://www.linkedin.com/in/david-serrano-lozano/">LinkedIn</a></li> 123 <li><a href="https://x.com/serra9lozano">X</a></li> 124 </ul> 125 </div> 126 127 </section> 128 129 <section class="block" id="news" aria-labelledby="news-h"> 130 <h2 id="news-h">News</h2> 131 <ol class="news" id="news-list"></ol> 132 <noscript><p>News needs JavaScript to show.</p></noscript> 133 <button type="button" class="more" id="news-more" aria-expanded="false" hidden></button> 134 </section> 135 136 <section class="block" id="publications" aria-labelledby="pubs-h"> 137 <div class="block-head"> 138 <h2 id="pubs-h">Publications</h2> 139 <div class="filter" id="pub-filter" role="radiogroup" aria-label="Filter publications"> 140 <button type="button" role="radio" aria-checked="true" data-f="all">All</button> 141 <button type="button" role="radio" aria-checked="false" data-f="first">First author</button> 142 </div> 143 </div> 144 <div class="pubs" id="pubs"></div> 145 <noscript><p>The list needs JavaScript. All papers are also on <a href="https://scholar.google.com/citations?user=CWuYYNUAAAAJ">Google Scholar</a>.</p></noscript> 146 </section> 147 148</main> 149 150<footer class="foot"> 151 <div class="wrap foot-inner"> 152 <p>© 2026 David Serrano-Lozano</p> 153 <p>
153NamedCurves runs in your browser, using the color naming model of van de Weijer et al. (2009).</p> 154 </div> 155</footer> 156
157<script src="assets/js/content.js"></script>
vendor: 1 bytes, line 157
157
158<script src="assets/js/w2c6.js"></script>
vendor: 1 bytes, line 158
158
159<script src="assets/js/site.js"></script>
159 160</body> 161</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.