PageSourceSearch

https://davidserra9.github.io/

html davidserra9.github.io collected 2026-10-03 08:55:54 UTC 10,139 bytes, 161 lines download raw bytes

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&nbsp;↗</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 &amp; 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.