<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://chcomin.github.io/publications/feed/articles.xml" rel="self" type="application/atom+xml" /><link href="https://chcomin.github.io/publications/" rel="alternate" type="text/html" /><updated>2026-07-15T12:18:39+00:00</updated><id>https://chcomin.github.io/publications/feed/articles.xml</id><title type="html">Cesar H. Comin Publications | Articles</title><subtitle>This is a collection of articles by Prof. Cesar H. Comin. They are for indexing and archival purposes. The full text of some articles have been converted to Markdown from the original Latex or PDF files. </subtitle><author><name>Cesar H. Comin</name></author><entry><title type="html">A new dataset for measuring the performance of blood vessel segmentation methods under distribution shifts</title><link href="https://chcomin.github.io/publications/articles/2025-vessmap-vessel-dataset/" rel="alternate" type="text/html" title="A new dataset for measuring the performance of blood vessel segmentation methods under distribution shifts" /><published>2025-04-10T00:00:00+00:00</published><updated>2025-04-10T00:00:00+00:00</updated><id>https://chcomin.github.io/publications/articles/2025-VessMAP-vessel-dataset</id><content type="html" xml:base="https://chcomin.github.io/publications/articles/2025-vessmap-vessel-dataset/"><![CDATA[<h1 id="introduction">Introduction</h1>

<p>The performance of neural networks has dominantly been measured using metrics such as classification or segmentation accuracy, precision, recall, and the area under the ROC curve. However, recent studies have shown the dangers of only considering such globally-averaged metrics (<a href="#ref-Shit2020">Shit et al. 2020</a>; <a href="#ref-Mosinska2018">Mosinska et al. 2018</a>; <a href="#ref-DaSilva2022"><span class="nocase">da Silva et al.</span> 2022</a>) that provide only an aggregated, summarized, view of the performance of machine learning algorithms on datasets with sometimes millions of images. Such an approach may hide important biases of the model (<a href="#ref-DaSilva2022"><span class="nocase">da Silva et al.</span> 2022</a>). For instance, for medical images, a 95% accuracy is usually considered a good performance. But what about the remaining 5%? It is usually unrealistic to expect models to reach 100% accuracy, but the samples that are not correctly processed by a neural network may hide important biases of the model. These concerns led to the definition of new approaches and metrics that can aid the interpretation of black box models (<a href="#ref-Chaddad2023">Chaddad et al. 2023</a>).</p>

<p>For medical image segmentation, the detection of relevant structures is usually only the first step of a more elaborate procedure for measuring relevant properties such as size (<a href="#ref-DePMendes2021"><span class="nocase">de P. Mendes et al.</span> 2021</a>), regularity (<a href="#ref-Perez-Beteta2018">Pérez-Beteta et al. 2018</a>), length (<a href="#ref-Paetzold2021"><span class="nocase">Paetzold et al.</span> 2021</a>; <a href="#ref-FreitasAndrade2022">Freitas-Andrade et al. 2022</a>), and curvature (<a href="#ref-Krestanova2020">Krestanova et al. 2020</a>; <a href="#ref-FreitasAndrade2022">Freitas-Andrade et al. 2022</a>) of the imaged structures. Therefore, systematic segmentation mistakes might lead to undetected errors when characterizing samples for clinical diagnoses (<a href="#ref-Reinke2021"><span class="nocase">Reinke et al.</span> 2021</a>) and research purposes (<a href="#ref-Shit2020">Shit et al. 2020</a>). An important cause of such systematic errors can be the presence of samples with characteristics that occur with low frequency in a dataset. This can happen due to additional, unexpected, noise during image acquisition, variations in tissue staining, image artifacts, or even the presence of structures that are anatomically different than what was expected. Assuming for illustration purposes that the data is normally distributed, a machine learning model having good performance around the peak of the distribution will tend to have good average accuracy measured for the whole dataset, even if it cannot correctly classify or segment images that are around the tail of the distribution (<a href="#ref-Gupta2019">Gupta et al. 2019</a>), which might be important for downstream analyses.</p>

<p>Segmenting the vasculature in tissue samples tends to be particularly challenging since the appearance of blood vessels can change significantly depending on tissue preparation and imaging protocols. In addition, in most cases, the global shape of the vasculature can be very different among the samples. We argue that blood vessel segmentation methodologies should have good performance, or even be directly optimized, on both prototypical and atypical samples. This focus can lead to models that are more robust to samples located in a sparsely populated region of the feature space of the dataset. In addition, it might also lead to models that generalize better to out-of-distribution samples as well as to new datasets. With these aspects in mind, we create a new dataset which we call the <em>Feature-Mapped Cortex Vasculature Dataset</em> (VessMAP). The dataset is designed to be as heterogeneous as possible by including samples having very different characteristics from each other. To this end, we use a simple and intuitive sampling methodology to select a subset of 100 images from a non-annotated base dataset containing 18279 image patches. The selected samples were then manually annotated with pixel-wise accuracy.</p>

<p>The dataset allows the creation of training and validation splits with images having different characteristics, such as contrast and blood vessel density. We show that different splits of the VessMAP dataset lead to very different training and validation results. As illustrated in Figure <a href="#fig:training_set_examples">1</a>, the performance on the validation set can be dissimilar depending on the samples used for training a neural network. Thus, we expect the dataset to be useful for the development of new segmentation algorithms that are robust under distribution shifts of the data as well as for the validation of novel few-shot and active learning approaches.</p>

<figure id="fig:training_set_examples" data-latex-placement="h">
[Image omitted for text-only version]
<figcaption>Illustration of the heterogeneity of the VessMAP dataset. Two segmentations generated by a neural network trained on different splits of the dataset are shown. (a) Original sample. (b) A network trained on a split of the dataset produces several false positives and misses some blood vessels. (c) The same network trained on a different split generates a more accurate segmentation. (d) Comparison between the two segmentations. Vessel pixels predicted in (b) but not in (c) are shown in red, and pixels in green were predicted as vessels in (c) but not in (b). Since the images in the VessMAP dataset have distinct characteristics, the training set needs to be carefully selected in order to avoid spurious results on the validation set.</figcaption>
</figure>

<p>The main contributions of this work are listed as follows:</p>

<ul>
  <li>
    <p>A new dataset, VessMAP, is made available to aid the development of blood vessel segmentation algorithms;</p>
  </li>
  <li>
    <p>It is shown that VessMAP has high variability compared to other popular datasets in the literature, leading to respective large variations of performance when training data is scarce;</p>
  </li>
  <li>
    <p>Specific splits of the dataset are provided for testing techniques that improve the generalizability of blood vessel segmentation algorithms.</p>
  </li>
</ul>

<h1 id="related-works">Related works</h1>

<p>Table <a href="#tab:datasets">1</a> shows a summary of the main blood vessel datasets used in the literature as well as some recently published datasets. Most of the datasets have images from the retina. Few datasets are associated with microscopy images. More importantly, to our knowledge, none of the datasets were specifically designed to maximize the diversity of the samples. The diversity on some datasets tends to come as a proxy from the inclusion of healthy and abnormal tissue. For instance, samples in the DRIVE dataset contain diabetic retinopathy, which generates abnormal characteristics in blood vessels and image artifacts such as exudates that are not related to blood vessels. Still, most blood vessels tend to have a well-defined geometry and texture in all samples of the dataset. Thus, it becomes a simple task for a segmentation algorithm to generalize to new unseen samples from the same dataset. It is not surprising that many methods can reach an accuracy larger than 0.94 on the DRIVE dataset (<a href="#ref-Kovacs2022">Kovács and Fazekas 2022</a>).</p>

<table>
  <thead>
    <tr>
      <th style="text-align: left">Dataset</th>
      <th style="text-align: left">Anatomical Region</th>
      <th style="text-align: left">Imaging Technique</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: left">DRIVE (<a href="#ref-StaalDRIVE">Staal et al. 2004</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">STARE (<a href="#ref-HooverSTARE">Hoover et al. 2000</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">CHASEDB1 (<a href="#ref-FrazCHASEBD1">Fraz et al. 2012a</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">HRF (<a href="#ref-OdstrcilikHRF">Odstrcilik et al. 2013</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">INSPIRE-AVR (<a href="#ref-NiemeijerINSPIRE-AVR">Niemeijer et al. 2011</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">IMAGERET (<a href="#ref-KauppiDIARETDB0">Tomi Kauppi et al. 2007</a>; <a href="#ref-KauppiDIARETDB1">T. Kauppi et al. 2007</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">MESSIDOR (<a href="#ref-DecenciereMESSIDOR"><span class="nocase">Decencière et al.</span> 2014</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">VICAVR (<a href="#ref-VICAVR"><em><span class="nocase">VICAVR dataset</span></em>, n.d.</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">ROC (<a href="#ref-NiemeijerROC">Niemeijer et al. 2010</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">DRIONS DB (<a href="#ref-CarmonaDRIONSDB">Carmona et al. 2008</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">DR HAGIS (<a href="#ref-HolmDRHAGIS">Holm et al. 2017</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">RET-TORT (<a href="#ref-ForacchiaRETTORT">Grisan et al. 2008</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">WIDE (<a href="#ref-EstradaWIDE">Estrada et al. 2015</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
      <td style="text-align: left">ultra-wide field-of-view fluorescein angiogram</td>
    </tr>
    <tr>
      <td style="text-align: left">IOSTAR (<a href="#ref-ZhangIOSTARRCSLO">Zhang et al. 2016</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">RC-SLO (<a href="#ref-ZhangIOSTARRCSLO">Zhang et al. 2016</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left"> </td>
      <td style="text-align: left">aorta; cerebral, coronary, aortofemoral and pulmonary arteries</td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">VESSEL12 (<a href="#ref-RudyantoVESSEL12"><span class="nocase">Rudyanto et al.</span> 2014</a>)</td>
      <td style="text-align: left">human lung</td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">3D-IRCADb-01 (<a href="#ref-SolerIRCADb">Soler et al. 2010</a>)</td>
      <td style="text-align: left">human liver</td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">ASOCA (<a href="#ref-GharleghiASOCA">Gharleghi et al. 2022</a>)</td>
      <td style="text-align: left">coronary arteries</td>
      <td style="text-align: left">cardiac CTA</td>
    </tr>
    <tr>
      <td style="text-align: left">Vascular Synthesizer(<a href="#ref-HamarnehVascuSynth">Hamarneh and Jassi 2010</a>)</td>
      <td style="text-align: left">synthetic vessels</td>
      <td style="text-align: left">-</td>
    </tr>
    <tr>
      <td style="text-align: left">VesSAP (<a href="#ref-TodorovVESSAP">Todorov et al. 2020</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">TubeMap (<a href="#ref-KirstTUBEMAP">Kirst et al. 2020</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">Di Diovanna et al. (<a href="#ref-DiGiovanna2018">Di Giovanna et al. 2018</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">BvEM (<a href="#ref-Wan2024">Wan et al. 2024</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left">volume electron microscopy</td>
    </tr>
    <tr>
      <td style="text-align: left">OCTA (<a href="#ref-Glandorf2024">Glandorf et al. 2024</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left">optical coherence microscopy</td>
    </tr>
    <tr>
      <td style="text-align: left">DeepVess (<a href="#ref-HaftJavaherian2019">Haft-Javaherian 2019</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">MiniVess (<a href="#ref-Poon2023">Poon et al. 2023</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left"> </td>
      <td style="text-align: left">mouse brain, heart, and bladder vasculature</td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">SMILE-UHURA (<a href="#ref-Chatterjee2024">Chatterjee et al. 2024</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left">MRA</td>
    </tr>
    <tr>
      <td style="text-align: left">TopCoW (<a href="#ref-Yang2024">Yang et al. 2024</a>)</td>
      <td style="text-align: left"> </td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">DeepVesselNet (<a href="#ref-Tetteh2020">Tetteh et al. 2020</a>)</td>
      <td style="text-align: left">human and rat brain</td>
      <td style="text-align: left"> </td>
    </tr>
    <tr>
      <td style="text-align: left">MSD8 (<a href="#ref-Antonelli2022">Antonelli et al. 2022</a>)</td>
      <td style="text-align: left">human liver</td>
      <td style="text-align: left">computed tomography</td>
    </tr>
    <tr>
      <td style="text-align: left">HR-Kidney (<a href="#ref-Kuo2023">Kuo et al. 2023</a>)</td>
      <td style="text-align: left">mouse kidney</td>
      <td style="text-align: left">X-ray</td>
    </tr>
    <tr>
      <td style="text-align: left">HiP-CT (<a href="#ref-Yagis2024">Yagis et al. 2024</a>)</td>
      <td style="text-align: left">human kidney</td>
      <td style="text-align: left">computed tomography</td>
    </tr>
  </tbody>
</table>

<p>Summary of important blood vessel datasets on the literature. *CTA: Computed tomography angiography. MRA: Magnetic resonance angiography. $<code class="language-plaintext highlighter-rouge">\mu</code>$CTA: Micro-computed tomography angiography. {#tab:datasets}</p>

<p>Regarding microscopy images, all datasets found by our survey include very few samples. Usually, very large 3D volumes are annotated in a semi-supervised fashion. They contain large amounts of vessels, but represent a single individual and image acquisition procedure. Therefore, most vessels have similar appearance and it becomes difficult to measure the generalization capability of segmentation methods. With these limitations in mind, we created a dataset that was specifically designed to include blood vessels having very different characteristics.</p>

<p>The creation of the dataset involved the application of a method for selecting relevant samples for annotation. A concept that is similar to the used methodology is the so-called <em>coreset</em> (<a href="#ref-Yu2024">Yu et al. 2024</a>). The aim of a coreset is to select a subset of samples that can optimally represent the whole dataset. Many different methodologies and criteria were developed for defining relevant coresets (<a href="#ref-Zheng2019">Zheng et al. 2019</a>; <a href="#ref-Adhikari2021">Adhikari et al. 2021</a>; <a href="#ref-Guo2022">Guo et al. 2022</a>). Indeed, the subset defined by our methodology can be associated with a coreset, but in our case, the aim of the methodology and the approach used differs markedly from the usual definition of a coreset. The aim of our methodology is not focused on accurately representing the underlying distribution of the data or preserving the accuracy of a machine learning algorithm, but on providing a relevant dataset for training machine learning algorithms while avoiding the underrepresentation of atypical samples. In addition, many coreset methodologies use a surrogate neural network to estimate latent features or to estimate a degree of uncertainty about each sample, while our methodology is more general in the sense that any set of features obtained from the samples can be used. Furthermore, many related studies consider a similarity metric for selecting relevant samples (<a href="#ref-Zheng2019">Zheng et al. 2019</a>; <a href="#ref-Adhikari2021">Adhikari et al. 2021</a>), which is a degenerate metric and, therefore cannot provide a full representation of the data distribution.</p>

<h1 id="materials-and-methods">Materials and methods</h1>

<p>In the following, we describe the methodology used for creating the VessMAP dataset. The methodology is illustrated in Figure <a href="#fig:flowchart">2</a> and can be divided into three steps: (a) acquisition of the base data from different experiments; (b) characterization of the base dataset according to important morphometry features; (c) selection of samples that uniformly covers the mapped feature space. The base non-annotated dataset used for selecting relevant samples for VessMAP is described in Section <a href="#sec:base_data">3.1</a>. The sampling methodology used for selecting appropriate samples from the base dataset is described in Section <a href="#sec:sampling">3.2</a>.</p>

<figure id="fig:flowchart" data-latex-placement="ht">
[Image omitted for text-only version]
<figcaption>A flowchart that illustrates the methodology used to create VessMAP. (a) A large image dataset from many experiments regarding the morphometry of the cortex vasculature of mice is used as the base dataset. (b) A set of random windows is extracted from the base dataset and relevant morphometry features are calculated. (c) The most descriptive features are used to project the samples into a 4-dimensional space and a sampling methodology is applied to select 100 images that uniformly cover this space. (d) The set of 100 images, together with respective manual annotations of the blood vessels, their medial axes, and metadata containing the features of each image, define the VessMAP dataset. (e) Some samples of the dataset are shown. Large differences in vessel appearance can be observed. *skel. het.: skeleton heterogeneity, back. mean.: background mean, back. std.: background standard deviation.</figcaption>
</figure>

<h2 id="blood-vessel-microscopy-base-images">Blood vessel microscopy base images</h2>

<p>We start from a collection of 2637 confocal microscopy images of mouse brain vasculature. The images were acquired under different experimental conditions in different works published in the literature (<a href="#ref-Lacoste2014">Lacoste et al. 2014</a>; <a href="#ref-Gouveia2017">Gouveia et al. 2017</a>; <a href="#ref-Ouellette2020">Ouellette et al. 2020</a>). Conditions include control animals, animals that have suffered a deletion of chromosome 16p11.12, animals that have experienced sense deprivation or sense hyperarousal, samples from stroke regions, and also from different stages of mouse development. The images have sizes from $<code class="language-plaintext highlighter-rouge">1376\times 1104</code>$ to $<code class="language-plaintext highlighter-rouge">2499\times 2005</code>$ pixels, totaling around 3.8GB of data.</p>

<p>The dataset is interesting because it has a considerable variety of characteristics of blood vessels. In addition, the images represent samples obtained from hundreds of different animals and experimental conditions. This makes it an excellent dataset for training machine learning algorithms for blood vessel segmentation. However, training supervised algorithms requires the manual annotation of the blood vessels.</p>

<p>After annotating a few samples, we estimated that each image in the dataset takes roughly 12 hours to fully annotate. Therefore, it is unfeasible to annotate the whole dataset, and a subset of samples needs to be selected. Our objective was to select a diverse set of samples containing both prototypical and atypical samples, so that it would be possible to create useful training and validation splits for quantifying the performance of segmentation algorithms under challenging distribution shifts between the splits. To this end, a sampling methodology was developed to select appropriate samples.</p>

<h2 id="sampling-methodology">Sampling methodology</h2>

<p>Each image in the base dataset may include illumination inhomogeneities, changes in contrast, different levels of noise, as well as blood vessels having distinct characteristics (e.g., caliber, tortuosity, etc). Thus, from the original dataset, we generated a new set of images, each having a size of 256$<code class="language-plaintext highlighter-rouge">\times</code>$<!-- -->256 pixels. These smaller images were generated by extracting 256$<code class="language-plaintext highlighter-rouge">\times</code>$<!-- -->256 patches from the original images. As shown in Figure <a href="#fig:janelas">3</a>, seven regions were extracted from each image. The seven regions were extracted in key areas of each image, with four windows in each of the corners of the image, a central window, and two windows at random positions. The latter two may overlap with the other windows. Windows that did not contain a satisfactory number of blood vessel segments were removed. The total size of the resulting dataset is 18279 images. This new dataset was used in the remainder of the sampling procedure.</p>

<figure id="fig:janelas">
[Image omitted for text-only version]
<figcaption>An example of seven regions extracted from a single sample. Confocal microscopy images can present illumination differences between the center and the borders of the image. The four corners, along with the central region, can capture most of the illumination inhomogeneities that may occur due to uneven illumination of the samples. Besides these five regions, two additional random regions are also drawn for each image.</figcaption>
</figure>

<p>The methodology developed to sample relevant images has three steps: 1) dataset mapping to a feature space, 2) generation of a discrete representation of the feature space, and 3) selection of points from the feature space representation. We explain each of these steps in the following sections.</p>

<h3 id="dataset-mapping">Dataset mapping</h3>

<p>We represent the dataset as $<code class="language-plaintext highlighter-rouge">D = \{\delta_1, \delta_2, ..., \delta_n\}</code>$ where $<code class="language-plaintext highlighter-rouge">n</code>$ is the number of samples. Given a function $<code class="language-plaintext highlighter-rouge">f: \delta_i \to \vec{p_i}</code>$ that maps a sample $<code class="language-plaintext highlighter-rouge">\delta_i</code>$ to a vector $<code class="language-plaintext highlighter-rouge">\vec{p_i}</code>$ with dimension $<code class="language-plaintext highlighter-rouge">d</code>$, the dataset is mapped to a feature space as a $<code class="language-plaintext highlighter-rouge">n \times d</code>$ matrix, which we call $<code class="language-plaintext highlighter-rouge">D_{\textrm{mapped}}</code>$. The function $<code class="language-plaintext highlighter-rouge">f</code>$ represents a set of characteristics measured from the samples. Each line of matrix $<code class="language-plaintext highlighter-rouge">D_{\textrm{mapped}}</code>$ therefore represents the features of a sample $<code class="language-plaintext highlighter-rouge">f(\delta_i)</code>$.</p>

<p>Given that the images from our base dataset were used in previous works, each sample has a respective segmentation that was obtained using a semi-supervised methodology. This methodology is based on the adaptive thresholding of the original images, where the threshold was selected manually for each image. The full details of the segmentation procedure are described in (<a href="#ref-FreitasAndrade2022">Freitas-Andrade et al. 2022</a>). Using the semi-supervised segmentation, the following features were used to characterize the samples: blood vessel contrast, level of Gaussian noise, blood vessel density, and medial line heterogeneity.</p>

<p>The blood vessel contrast is related to the average difference in intensity between the vessels and the background of the image. The greater the contrast, the easier it is to detect the vessels. It can be measured using the original image of the vessels and the respective semi-supervised segmentation containing the pixels belonging to the vessels. The contrast was calculated as</p>

<pre><code class="language-math">\begin{equation}
    C = \frac{\bar{I}_v}{\bar{I}_f},
    
\end{equation}
</code></pre>
<p>where $<code class="language-plaintext highlighter-rouge">\bar{I}_v</code>$ and $<code class="language-plaintext highlighter-rouge">\bar{I}_f</code>$ are the mean intensities of, respectively, the pixels belonging to the blood vessels and the background of the image.</p>

<p>The signal-to-noise level of the images can be estimated in different ways. We investigated different definitions and used the method that was the most compatible with a visual inspection of the images. The method proposed in (<a href="#ref-Donoho1994">Donoho and Johnstone 1994</a>) was used. It assumes a noise with normal distribution and uses wavelets to identify the most likely standard deviation of the noise component. To prevent the method from capturing vessel variation, only the background of the image was used for the estimation.</p>

<p>Blood vessel density is defined as the total length of blood vessels in an image divided by the image area. To do this, we first applied a skeletonization algorithm to extract the medial lines of the vessels (<a href="#ref-Palagyi1998">Palàgyi and Kuba 1998</a>). The total length of vessels was then calculated as the sum of the arc-lengths of all vessel segments.</p>

<p>The last metric, which we call medial line heterogeneity, measures the illumination changes in the vessel lumen. To calculate this metric, we first blurred the image using a Gaussian filter with unit standard deviation to remove extreme values. The medial line heterogeneity was then calculated as the standard deviation of the pixel values along the medial lines of this blurred image. The medial lines considered are the same ones used for the blood vessel density metric.</p>

<p>We observed that the medial line heterogeneity tended to be correlated with the average intensity of the blood vessels. In order to remove this dependency, the medial line heterogeneity, as well as the average intensity of the medial lines, were calculated for all images in the dataset. Then, a straight line fit $<code class="language-plaintext highlighter-rouge">h_m = a*m + b</code>$ was applied to the calculated values, where $<code class="language-plaintext highlighter-rouge">m</code>$ is the average intensity and $<code class="language-plaintext highlighter-rouge">h_m</code>$ is the expected medial line heterogeneity associated with $<code class="language-plaintext highlighter-rouge">m</code>$. Next, a normalized medial line heterogeneity was defined as $<code class="language-plaintext highlighter-rouge">\tilde{h} = h - h_m</code>$, where $<code class="language-plaintext highlighter-rouge">h</code>$ is the medial line heterogeneity calculated for an image.</p>

<p>These specific features were used because they can significantly impact the quality of the morphometry assessment of the cortex vasculature. For example, images with low contrast and/or high noise levels are expected to be more challenging to be accurately segmented. Conversely, images with a larger amount of blood vessels and high medial line heterogeneity provide intricate topology and texture to segmentation algorithms. Other features, such as blood vessel tortuosity, the density of branching points (bifurcations), and additional noise estimators, were considered. However, we disregarded strongly correlated features for our final data selection. The four remaining metrics mapped the base dataset to a 4-D feature space. As mentioned before, the dataset contains 18279 images. Hence, the whole dataset was mapped to a matrix $<code class="language-plaintext highlighter-rouge">D_{\textrm{mapped}}</code>$ having size $<code class="language-plaintext highlighter-rouge">18279\times 4</code>$.</p>

<h3 id="feature-space-discretization">Feature space discretization</h3>

<p>A regular grid was defined in the 4-D feature space, and each data point was mapped to the nearest point in this grid. Figure <a href="#fig:data_mapping">4</a> illustrates this procedure. For creating the grid, it is useful to first normalize the values of $<code class="language-plaintext highlighter-rouge">D_{\textrm{mapped}}</code>$ to remove differences in the scale of the features. Thus, each feature was normalized to have zero mean and unit variance. Then, the discretization was done by defining a scale $<code class="language-plaintext highlighter-rouge">\nu</code>$ that sets the size of each grid cell, and calculating</p>

<pre><code class="language-math">\begin{equation}
    
    \displaystyle D_{\textrm{grid}} = \left\lfloor\frac{D_{\textrm{mapped}}}{\nu}\right\rfloor,
\end{equation}
</code></pre>
<p>where $<code class="language-plaintext highlighter-rouge">\lfloor . \rfloor</code>$ represents the floor function. As shown in Figure <a href="#fig:data_mapping">4</a>(c), this operation ensures that each value of $<code class="language-plaintext highlighter-rouge">D_{\textrm{grid}}</code>$ lies within a regular grid. Note that, as a consequence of undersampling, we expect multiple data points to fall in the same grid position; this is one of the key properties of the method that will allow a uniform sampling of the data. A value of $<code class="language-plaintext highlighter-rouge">\nu=10</code>$ was used since we observed that it provided a good balance between grid sparsity and variability.</p>

<figure id="fig:data_mapping" data-latex-placement="ht">
[Image omitted for text-only version]
<figcaption>Representation of the mapping procedure applied to a set <span class="math inline"><em>D</em></span> of samples, followed by the feature space discretization. (a) Set <span class="math inline"><em>D</em></span> contains blood vessel images. (b) Each image of <span class="math inline"><em>D</em></span> is mapped to a 4-D position in the new feature space. Here, the space is represented in 2-D for ease of visualization. (c) The mapped points (light-red points) are moved to a new position (red points) within a regular grid defined by Equation <a href="#eq:resample">[eq:resample]</a>.</figcaption>
</figure>

<p>After the feature space discretization, we generated a sparse set of points representing an estimation of the possible values that can be obtained in the feature space. We call this set the <em>sampling set</em> of the feature space. This procedure works as follows. A 4-dimensional discrete hypersphere $<code class="language-plaintext highlighter-rouge">S</code>$ with radius $<code class="language-plaintext highlighter-rouge">r</code>$ (in grid units) centered on each data point is defined. This hypersphere is translated to each data point position. The union of the calculated hypersphere positions of all points defines the sampling set $<code class="language-plaintext highlighter-rouge">D_{\textrm{sset}}</code>$. The general appearance of $<code class="language-plaintext highlighter-rouge">D_{\textrm{sset}}</code>$ is depicted by the blue points of Figure <a href="#fig:drawing">5</a>. The hypersphere radius used for creating the VessMAP dataset was $<code class="language-plaintext highlighter-rouge">r=4</code>$.</p>

<h3 id="uniform-selection-of-points">Uniform selection of points</h3>

<p>The final step of the method is to select the samples to be manually annotated. The samples are selected by first drawing a set of points from the sampling set $<code class="language-plaintext highlighter-rouge">D_{\textrm{sset}}</code>$. As illustrated in Figure <a href="#fig:drawing">5</a>, we draw from $<code class="language-plaintext highlighter-rouge">D_{\textrm{sset}}</code>$ $<code class="language-plaintext highlighter-rouge">k</code>$ points with uniform probability (green dots in Figure <a href="#fig:drawing">5</a>). For each point drawn, the closest data sample is identified using the Euclidean distance. If the same data sample is obtained more than once, a new point is drawn from $<code class="language-plaintext highlighter-rouge">D_{\textrm{sset}}</code>$ until $<code class="language-plaintext highlighter-rouge">k</code>$ unique data samples are obtained. The final set of data samples (orange stars in Figure <a href="#fig:drawing">5</a>) is represented as $<code class="language-plaintext highlighter-rouge">D_{\textrm{sampled}}</code>$.</p>

<figure id="fig:drawing">
[Image omitted for text-only version]
<figcaption>Illustration of the proposed sampling protocol. <span class="math inline"><em>k</em></span> random points (green dots) are drawn from the sampling set <span class="math inline"><em>D</em><sub>sset</sub></span> (blue dots). The subset of sampled data points is defined by the data points that are closest to each drawn point (orange stars). Red squares represent the remaining data points that were not selected.</figcaption>
</figure>

<p>A uniform sampling of $<code class="language-plaintext highlighter-rouge">D_{\textrm{sset}}</code>$ allows the selection of prototypical and atypical samples from the dataset with equal probability. Nevertheless, a single realization of the sampling may lead to distortions, such as the selection of many samples at similar regions of the space or the creation of large regions with no samples selected. This is due to random fluctuations in the sampling process. To amend this, we define a metric called Farthest Unselected Point (FUS) that punishes sampled subsets with large gaps between the selected points.</p>

<p>Let $<code class="language-plaintext highlighter-rouge">D_{\textrm{sampled}}</code>$ be the set of sampled data points from $<code class="language-plaintext highlighter-rouge">D_{\textrm{grid}}</code>$, and $<code class="language-plaintext highlighter-rouge">\neg D_{\textrm{sampled}}</code>$ the set of points from $<code class="language-plaintext highlighter-rouge">D_{\textrm{grid}}</code>$ that were not selected in the sampled subset. For each data point in $<code class="language-plaintext highlighter-rouge">\neg D_{\textrm{sampled}}</code>$, the Euclidean distance to the closest point in $<code class="language-plaintext highlighter-rouge">D_{\textrm{sampled}}</code>$ is obtained. The FUS metric is defined as the largest calculated distance among all points in $<code class="language-plaintext highlighter-rouge">\neg D_{\textrm{sampled}}</code>$. Sampled subsets leading to low values of the FUS metric should be preferred since it avoids the creation of large regions of the feature space with no samples. In our experiments, we found that minimizing FUS for 1000 different subsets covered a good amount of subset possibilities.</p>

<p>We decided to select $<code class="language-plaintext highlighter-rouge">k = 100</code>$ images for annotation. Also, to avoid data leakage, an additional restriction that prevented the selection of samples from the same image was used.</p>

<h1 id="results">Results</h1>

<h2 id="dataset-heterogeneity">Dataset heterogeneity</h2>

<p>The sampling approach used to generate the VessMAP dataset should lead to a heterogeneous set of samples. It is difficult to properly measure the heterogeneity of the dataset because it would involve the estimation of the probability density function of the original data, which is not a trivial task and can be influenced by the choice of parameter values. However, it is clear that the method should naturally lead to a uniform selection of the samples. This is so because the set $<code class="language-plaintext highlighter-rouge">D_{\textrm{grid}}</code>$ (defined in Section <a href="#sec:feature_space_discretization">3.2.2</a>) represents an estimation of the domain of the probability density function of the data, and this domain is sampled uniformly.</p>

<p>One approach to illustrate the characteristics of the sampled images is displayed in Figure <a href="#fig:metrics_histogram">6</a>, which shows histograms of the four considered features for both the full dataset and the sampled subset. The histograms of individual features are not expected to be uniform since they represent a projection of the original data into one dimension. Still, it can be seen that the histograms of the sampled set tend to represent a slightly flattened version of the histograms of the original data, indicating that a larger priority is being given to atypical samples when compared to the original distribution.</p>

<figure id="fig:metrics_histogram">
[Image omitted for text-only version]
<figcaption>Histograms of the four features calculated from the base dataset and the sampled subset. Blue bars correspond to the distribution of each metric of the base dataset of cortex images. Orange bars correspond to the distribution of the sampled subset. Note that the frequencies were normalized by their sum so the y-axis matches for all plots.</figcaption>
</figure>

<p>A more robust way of visually checking the sampled subset is to visualize the data using Principal Component Analysis (PCA). Using PCA, the original 4-D data can be projected into 2-d with optimal preservation of the variance (<a href="#ref-Gewers2021">Gewers et al. 2021</a>). Figure <a href="#fig:pca">7</a> shows the PCA projection of the data. The four plots included in the figure represent the same projection, but the points are colored according to the different features used to characterize the images. The selected samples are shown in red. It can be noticed that the sampling methodology selects a subset of images that uniformly covers the distribution of the data. Furthermore, as also suggested by the histograms in Figure <a href="#fig:metrics_histogram">6</a>, the sampling was capable of covering the full range of values of every considered feature.</p>

<figure id="fig:pca">
[Image omitted for text-only version]
<figcaption>PCA of the blood vessel dataset. Red points correspond to the sampled subset obtained by the sampling methodology. Blue points correspond to unselected points from the original dataset, with their lightness representing the value of the four original metrics: vessel density, contrast, medial line heterogeneity, and image noise. Darker blues correspond to larger values of the corresponding metric.</figcaption>
</figure>

<p>The subset of images selected by the method (the VessMAP dataset) is shown in Figure <a href="#fig:sampled_images">8</a>. The subset indeed contains a heterogeneous set of images covering many different values of the considered features (e.g., low contrast, high vessel density, etc). For instance, some of the samples in the dataset come from animals who suffered hemorrhagic strokes. These samples are very different from the typical samples contained in the base dataset, and they would be largely underrepresented if a sampling following the data distribution was performed.</p>

<figure id="fig:sampled_images" data-latex-placement="!ht">
[Image omitted for text-only version]
<figcaption>The VessMAP dataset. All 100 samples of the dataset are shown in the figure. The images cover a wide range of values in the feature space defined by our four features. Contrast variation and vessel density are the easier features to visually verify. The medial line heterogeneity can be verified by noticing the brightness changes along blood vessels. Gaussian noise level is harder to verify visually, but pronounced noise can be observed on some of the brighter images. Images inside the blue and red rectangles define, respectively, the training and validation sets for some of the experiments described in Section <a href="#sec:exps_splits">4.2</a>.</figcaption>
</figure>

<p>We manually labeled each of the 100 images and made the dataset publicly available (<a href="#ref-Vessmap2023">Silva et al. 2023</a>). To account for inter-annotator variability, 20 samples were labeled by two annotators. The Dice similarity score between the two annotators is 0.8780. We identified that most disagreement between annotators lies in delineating the vessel borders, resulting in mildly different blood vessel calibers. With that in mind, we also calculated the centerline Dice (clDice) (<a href="#ref-Shit2020">Shit et al. 2020</a>) between both annotations, which provides a metric of how well the annotators agreed about the topology of the blood vessels. A clDice of 0.9556 was obtained, indicating a good agreement between annotators regarding the preservation of continuities and bifurcations. As a comparison, the annotations of the DRIVE dataset’s (one of the most used blood vessel segmentation datasets) test set have a Dice similarity of 0.7881 and a clDice of 0.7634.</p>

<p>The VessMAP repository includes manually annotated binary labels, their skeletons (calculated by the Palágyi-Kuba algorithm (<a href="#ref-Palagyi1998">Palàgyi and Kuba 1998</a>)), and the metrics for each sample (as described in Section <a href="#sec:dataset_mapping">3.2.1</a>) – which were calculated using the manual annotations. We verified that the metrics calculated from the manual annotations have a strong correlation with the metrics calculated using the labels obtained from the semi-supervised segmentation algorithm. This evidences the quality of the algorithm in providing useful metrics to map the dataset into a feature space. We expect the VessMAP dataset to be useful for future studies regarding the influence of image and tissue characteristics on the generalization capability of segmentation algorithms.</p>

<h2 id="neural-network-performance-on-vessmap-splits">Neural network performance on VessMAP splits</h2>

<p>Many current methods for semantic segmentation of biological images involve neural networks (<a href="#ref-Xu2024">Xu et al. 2024</a>). Convolutional Neural Networks (CNNs) have been successfully used for segmenting biological structures for many years, especially after the adoption of encoder/decoder architectures, such as the original U-Net (<a href="#ref-Ronneberger2015">Ronneberger et al. 2015</a>) and its variants (<a href="#ref-Isensee2021">Isensee et al. 2021</a>; <a href="#ref-Galdran2022">Galdran et al. 2022b</a>; <a href="#ref-Fhima2024">Fhima et al. 2024</a>). Recently, the emergence of the Transformer (<a href="#ref-Vaswani2017">Vaswani et al. 2017</a>) architecture allowed remarkable performance in tasks such as the development of Large Language Models (<a href="#ref-OpenAI2024"><strong>OpenAI2024?</strong></a>; <a href="#ref-Meta2024"><span class="nocase">Grattafiori et al.</span> 2024</a>), speech processing (<a href="#ref-Radford2022">Radford et al. 2022</a>), multimodal learning (<a href="#ref-Zhang2024">Zhang et al. 2024</a>), and drug discovery (<a href="#ref-Raza2023">Raza et al. 2023</a>). Regarding image processing, Transformers don’t make assumptions about the relationship between the pixels of an image. This lack of inductive bias makes it harder to train a model from scratch in scenarios of scarce data, and it is usually necessary to pre-train a Vision Transformer (ViT) (<a href="#ref-Dosovitskiy2021">Dosovitskiy et al. 2021</a>) in large datasets such as ImageNet (<a href="#ref-Deng2009">Deng et al. 2009</a>). Since we aim to evaluate the VessMAP performance using small training sets, we chose to use CNNs, which tend to perform better than ViTs for medical image segmentation with limited data (<a href="#ref-Shamshad2023">Shamshad et al. 2023</a>).</p>

<figure id="fig:resunetv2" data-latex-placement="ht">
[Image omitted for text-only version]
<figcaption>CNN architecture used to evaluate the training performance of different VessMAP splits. The input data go through a convolution layer with 64 <span class="math inline">7 × 7</span> kernels. 8 residual blocks are then applied, with the first one having stride 2 to downsample the activations. The final feature map of the encoder is concatenated with the activations from the first convolution layer and decoded by a single residual block. A final convolution layer generates the segmentation. The convolutions are padded to ensure no resolution loss after each operation.</figcaption>
</figure>

<p>To evaluate the potential of VessMAP to generate data splits that are challenging for neural networks, we generated eight different splits based on the features used for creating the dataset: blood vessel density, contrast, medial line heterogeneity, and noise estimation. For each feature, we selected 20 of the samples with the lowest and highest values and trained a segmentation CNN using two configurations: (i) training with samples that have the lowest feature values –lowest split– and evaluating with samples that have the highest feature values –highest split–, and (ii) training with the highest split and evaluating with the lowest split. We chose to use 20 images because it is a similar number to common split sizes used for well-known blood vessel datasets, such as DRIVE (<a href="#ref-StaalDRIVE">Staal et al. 2004</a>), STARE (<a href="#ref-HooverSTARE">Hoover et al. 2000</a>), and CHASEDB1 (<a href="#ref-Fraz2012">Fraz et al. 2012b</a>). The idea behind this experiment is to test whether we can use VessMAP to generate splits that challenge the generalization capability of CNNs.</p>

<p>For this experiment, we used the CNN architecture illustrated in Figure <a href="#fig:resunetv2">9</a>. This architecture encodes the input data through a series of residual blocks (<a href="#ref-He2016">He et al. 2016</a>), concatenates the resulted feature vector with the activations from the first convolution operation (similar to a U-Net (<a href="#ref-Ronneberger2015">Ronneberger et al. 2015</a>)), and decodes the feature vector with a single residual block. For each training/evaluation split, we trained the network for 1000 epochs. The training was carried out using the Cross-Entropy as the loss function, the Adam optimizer (<a href="#ref-Kingma2014">Kingma 2014</a>), and a polynomial learning rate scheduler (power = 0.9) – which decays the initial learning rate (0.01) almost linearly.</p>

<p>Figure <a href="#fig:splits">10</a> presents the loss curves of the eight training setups (two split configurations for each metric). We evaluate the distance between the training and validation loss curves, $<code class="language-plaintext highlighter-rouge">\delta</code>$, as a metric of how well the CNN generalized for out-of-distribution data. Only the first 200 epochs are plotted because $<code class="language-plaintext highlighter-rouge">\delta</code>$ did not change significantly during the remaining epochs. We define $<code class="language-plaintext highlighter-rouge">\delta</code>$ as the difference between the training loss and the validation loss at a specific epoch. It is also worth noting that the loss curves were smoothed using an exponentially weighted moving average in order to reduce the natural variance of the loss values and obtain a more precise $<code class="language-plaintext highlighter-rouge">\delta</code>$ value. Here, we calculate $<code class="language-plaintext highlighter-rouge">\delta</code>$ at epoch 150.</p>

<figure id="fig:splits" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Training and validation loss curves for eight different splits that were generated using the VessMAP metadata. In (a), we depict the results obtained by training a CNN with the 20 samples having the highest values of each considered metric (indicated above each plot) and validating with the 20 images having the lowest values of the metric. The opposite situation is presented in (b), <em>i.e.</em>, the samples having the lowest values of the metrics were used for training, and the models were validated on the samples having the largest values of each metric. From left to right, each column shows the result for each considered metric: contrast, noise, density, and medial line heterogeneity. Negative <span class="math inline"><em>δ</em></span> values indicate that the CNN does not generalize well to the validation data. Positive <span class="math inline"><em>δ</em></span> values indicate that the validation samples are easier to segment than the training samples.</figcaption>
</figure>

<p>For the splits using the contrast feature, when training with samples having low contrast (Figure <a href="#fig:splits">10</a>(b)), the network generalizes well for new data having high contrast. This behavior can be attributed to the fact that high-contrast images are less challenging and, if the network learns how to properly segment low-contrast images, it tends to handle well high-contrast images. The opposite behavior occurs when we invert the training and validation sets. When training with high-contrast images (Figure <a href="#fig:splits">10</a>(a)), the CNN could not generalize towards low-contrast data, yielding a negative $<code class="language-plaintext highlighter-rouge">\delta</code>$. The same behavior can be observed for the blood vessel density splits. Notice that a negative $<code class="language-plaintext highlighter-rouge">\delta</code>$ indicates that using specifically low-density samples as the training set yields low generalization towards more dense images. The exact opposite happens when training with denser samples. It can also be noticed that the training splits using the highest noise and medial line heterogeneity values resulted in similar training and validation loss curves. This indicates that, although these splits are unbalanced regarding feature values, the samples are still diverse enough to allow good generalization. The results of the experiments with different splits are summarized in Table <a href="#tab:deltas">2</a>.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: left">Experiment</th>
      <th style="text-align: left">Train Loss</th>
      <th style="text-align: left">Valid Loss</th>
      <th style="text-align: left">$<code class="language-plaintext highlighter-rouge">\delta</code>$</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: left"><strong>Contrast (h)</strong></td>
      <td style="text-align: left"><strong>0.2853</strong></td>
      <td style="text-align: left"><strong>0.5359</strong></td>
      <td style="text-align: left"><strong>-0.2507</strong></td>
    </tr>
    <tr>
      <td style="text-align: left">Contrast (l)</td>
      <td style="text-align: left">0.3831</td>
      <td style="text-align: left">0.1661</td>
      <td style="text-align: left">0.2107</td>
    </tr>
    <tr>
      <td style="text-align: left">Density (h)</td>
      <td style="text-align: left">0.3652</td>
      <td style="text-align: left">0.2309</td>
      <td style="text-align: left">0.1343</td>
    </tr>
    <tr>
      <td style="text-align: left"><strong>Density (l)</strong></td>
      <td style="text-align: left"><strong>0.2610</strong></td>
      <td style="text-align: left"><strong>0.5575</strong></td>
      <td style="text-align: left"><strong>-0.2966</strong></td>
    </tr>
    <tr>
      <td style="text-align: left">Noise (h)</td>
      <td style="text-align: left">0.2717</td>
      <td style="text-align: left">0.2535</td>
      <td style="text-align: left">0.0182</td>
    </tr>
    <tr>
      <td style="text-align: left">Noise (l)</td>
      <td style="text-align: left">0.3710</td>
      <td style="text-align: left">0.2243</td>
      <td style="text-align: left">0.1467</td>
    </tr>
    <tr>
      <td style="text-align: left"><strong>Skel. het. (h)</strong></td>
      <td style="text-align: left"><strong>0.2934</strong></td>
      <td style="text-align: left"><strong>0.2992</strong></td>
      <td style="text-align: left"><strong>-0.0057</strong></td>
    </tr>
    <tr>
      <td style="text-align: left">Skel het. (l)</td>
      <td style="text-align: left">0.3696</td>
      <td style="text-align: left">0.2514</td>
      <td style="text-align: left">0.1182</td>
    </tr>
  </tbody>
</table>

<p>$<code class="language-plaintext highlighter-rouge">\delta</code>$ values for the experiments with different splits generated using the VessMAP metadata. Each experiment name depicts the feature used to split the dataset, followed by (h) if the training set had the largest values of the feature or (l) if the training set had the lowest values. Negative $<code class="language-plaintext highlighter-rouge">\delta</code>$ values suggest poor generalization and were marked as bold. *Skel. het: skeleton heterogeneity. {#tab:deltas}</p>

<p>Considering that the VessMAP images are diverse, another approach for generating challenging training and validation splits is to select samples that are far apart in the feature space. To do so, it is first necessary to identify a distance threshold above which the training and validation sets can be considered to be adequately separated in the feature space. We calculated this threshold by generating 10000 random splits of 20 training and validation images and obtaining the smallest Euclidean distance between all pairs of points of the two sets for each split. Then, we analyzed the histogram of the calculated distances and considered that two sets are far apart if their distance is larger than a threshold of $<code class="language-plaintext highlighter-rouge">t=0.7</code>$, which corresponded to approximately $<code class="language-plaintext highlighter-rouge">2.4\%</code>$ of the randomly drawn splits.</p>

<p>One of the identified splits containing highly distinct samples is highlighted in blue and red in Figure <a href="#fig:sampled_images">8</a>. By using the same CNN and hyperparameters as the previous experiments, an average validation Dice score (<a href="#ref-Dice1945">Dice 1945</a>) of $<code class="language-plaintext highlighter-rouge">0.824\pm0.008</code>$ was obtained for 100 training runs using the identified split. When the training and validation sets were swapped, a Dice score of $<code class="language-plaintext highlighter-rouge">0.892\pm0.006</code>$ was obtained. This result is in agreement with our previous experiment depicted in Figure <a href="#fig:splits">10</a>, as the images of the training set present high contrast, low density, and low medial line heterogeneity.</p>

<p>For reference, we ran a similar experiment on the retinography images from the DRIVE, STARE, and CHASEDB1 datasets. For the DRIVE dataset, a Dice of $<code class="language-plaintext highlighter-rouge">0.803\pm0.002</code>$ was obtained using the official split of the dataset, and a Dice of $<code class="language-plaintext highlighter-rouge">0.791\pm0.003</code>$ was obtained when the training and validation sets were swapped. Since the STARE dataset does not have an official training and validation split, we trained the network for 100 randomly drawn splits and calculated the average performance difference between each split and its swapped counterpart. An average Dice difference of $<code class="language-plaintext highlighter-rouge">0.029\pm0.024</code>$ was obtained, with a maximum difference of 0.12. This same approach was applied to the CHASEDB1 dataset, where an average Dice difference of $<code class="language-plaintext highlighter-rouge">0.01\pm0.008</code>$ was obtained, with a maximum difference of 0.03. Note that the CHASEDB1 and DRIVE datasets got similar results regarding the performance difference between splits. The difference in Dice values obtained for the splits of the VessMAP dataset, $<code class="language-plaintext highlighter-rouge">0.892-0.824=0.068</code>$, was significantly larger than the maximum values obtained for the CHASEDB1 and DRIVE datasets.</p>

<p>Interestingly, our experiments show that the STARE dataset contains the split with the largest performance difference among all datasets. Indeed, some samples of the STARE dataset have very distinct appearances when compared to the typical characteristics of the dataset. Thus, in addition to VessMAP, STARE also seems to be a suitable dataset for evaluating network generalizability on blood vessel segmentation tasks. Nevertheless, the higher number of images in VessMAP compared to STARE and the feature metadata enables the definition of training setups with a greater number of training/validation splits.</p>

<p>It is worth mentioning that the Dice values obtained in our experiments with the fundus images are slightly lower than the state-of-the-art results for these datasets (<a href="#ref-Cervantes2023">Cervantes et al. 2023</a>). This is mainly because no preprocessing and data augmentation were applied in order to match the training setup applied to VessMAP.</p>

<p>The heterogeneity of the VessMAP dataset is particularly useful for developing robust segmentation models when the training data is scarce. To show this, we ran a series of experiments using only four images for the training set. This replicates situations where, for instance, an active learning method suggests a small set of images for annotation, or on interactive segmentation scenarios where only a small set of blood vessels might be annotated. A neural network was trained on 4 randomly selected samples from the VessMAP dataset and the performance was measured on the remaining 96 samples. The same process was repeated 100 times using different sets of samples. To show that the overall results of our analyses are not dependent on a specific network architecture or training parameters, we replicated the same model and training approach used in (<a href="#ref-galdran2022state">Galdran et al. 2022a</a>). Specifically, the $<code class="language-plaintext highlighter-rouge">\phi_{3,8}</code>$ U-Net model containing 6 convolution layers in the encoder was used. The training protocol was also replicated with the exception of the cyclical learning rate scheduler, which was replaced by a polynomial scheduler. The batch size was also changed from 4 to 2 since the training set has only four samples.</p>

<p>For each image of the dataset, we measured the Dice scores obtained for trainings runs in which the image was not included in the training set. The result for all images is shown in Figure <a href="#fig:boxplots">11</a>(a). It is clear that, for most images, the samples used for training the network have a large influence on the quality of the segmentation. The training set can lead to either very good segmentations or to segmentations that are of very poor quality.</p>

<figure id="fig:boxplots" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Segmentation performance for all images of the datasets used in the experiments. Each vertical box represents the distribution of Dice scores obtained for a sample across 100 training runs. The bottom and top of each box represent, respectively, the first (<span class="math inline"><em>q</em><sub>1</sub></span>) and third (<span class="math inline"><em>q</em><sub>3</sub></span>) quartiles of the data. The horizontal green line indicates the median and the whiskers indicate the range <span class="math inline">[<em>q</em><sub>1</sub> − 1.5(<em>q</em><sub>3</sub> − <em>q</em><sub>1</sub>), <em>q</em><sub>3</sub> + 1.5(<em>q</em><sub>3</sub> − <em>q</em><sub>1</sub>)]</span>. The results are shown for the (a) VessMAP, (b) DRIVE, (c) STARE, and (d) CHASEDB1 datasets.</figcaption>
</figure>

<p>For comparison, we repeated the same experiments for the DRIVE, STARE, and CHASEDB1 datasets. The results are shown in Figures <a href="#fig:boxplots">11</a>(b)-(d). The variation observed for these datasets is much smaller compared to the VessMAP dataset. That is, four training samples are usually enough to obtain good and robust performance on the remaining samples. Thus, methods developed to work on scarce data annotation regimes might trivially result in good, low-biased performance when tested on these datasets. The same trend was observed for the area under the ROC curve (AUC) and average precision performance metrics (Figures <a href="#fig:boxplots_roc_auc">13</a> and <a href="#fig:boxplots_avg_precision">14</a> of the supplementary material).</p>

<p>To quantify the performance variation observed, the difference between the highest and lowest Dice score obtained for each sample was calculated. The average difference for all samples was then calculated for each dataset. The values are shown in Table <a href="#tab:dice_diff">3</a> and confirm the high performance variations observed for VessMAP.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: left">Dataset</th>
      <th style="text-align: left">Average Dice difference</th>
      <th style="text-align: left">Std. dev. Dice difference</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: left">VessMAP</td>
      <td style="text-align: left">0.55</td>
      <td style="text-align: left">0.19</td>
    </tr>
    <tr>
      <td style="text-align: left">DRIVE</td>
      <td style="text-align: left">0.13</td>
      <td style="text-align: left">0.13</td>
    </tr>
    <tr>
      <td style="text-align: left">STARE</td>
      <td style="text-align: left">0.29</td>
      <td style="text-align: left">0.18</td>
    </tr>
    <tr>
      <td style="text-align: left">CHASEDB1</td>
      <td style="text-align: left">0.11</td>
      <td style="text-align: left">0.06</td>
    </tr>
  </tbody>
</table>

<p>Influence of the training set on the generalizability of a model. For each dataset, models were trained on 100 different training sets containing 4 images each and were validated on the remaining images. The difference between the maximum and minimum Dice scores obtained for each sample across all runs was calculated and averaged over all samples. The standard deviation of the differences is also shown to provide a reference regarding the degree of variation observed among samples. {#tab:dice_diff}</p>

<p>In Figure <a href="#fig:predictions">12</a> we show example segmentations obtained for the sample having the median standard deviation of Dice scores among all runs, that is, a sample with a typical variation of Dice scores observed in the dataset. The training set can lead to many missing blood vessels, to an oversegmentation of the vessels, to the presence of spurious holes as well as to discontinuities on the vessels. For many other samples, we also observed a large number of false positives.</p>

<figure id="fig:predictions" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Example segmentations obtained for sample 6818 of the VessMAP dataset. The original image and manual annotation are shown at the upper left corner. The remaining panels show the training set used to train a neural network and the respective segmentation obtained for the sample. The respective Dice scores are shown above each segmentation.</figcaption>
</figure>

<p>With these analyses, we suggest two applications of the VessMAP metadata. First, one can generate splits that challenge the generalization capacity of a neural network, yielding negative $<code class="language-plaintext highlighter-rouge">\delta</code>$ during training. This kind of split can be used to test or develop new approaches to handle datasets having very distinct samples. In a similar fashion, splits that have positive $<code class="language-plaintext highlighter-rouge">\delta</code>$ can be used for developing new active learning methods, where it is useful to identify challenging samples for training networks so as to obtain low validation loss. In both situations, an ideal model should converge the training and validation loss curves, resulting in $<code class="language-plaintext highlighter-rouge">\delta \approx 0</code>$.</p>

<p>To aid the development of such methods, we provide official splits of the dataset containing training sets that lead to vastly distinct inference performances. The splits are shown in Table <a href="#tab:splits">4</a>. For calculating the performance of each split, each of the 100 training runs was repeated 5 times using different seeds for the random number generator used during training.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: left"> </th>
      <th style="text-align: left">Training set</th>
      <th style="text-align: left">Dice score</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: left">Split 1</td>
      <td style="text-align: left">4404, 11828, 16295, 7344</td>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">0.846\pm 0.007</code>$</td>
    </tr>
    <tr>
      <td style="text-align: left">Split 2</td>
      <td style="text-align: left">12943, 8493, 12618, 9284</td>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">0.800\pm 0.014</code>$</td>
    </tr>
    <tr>
      <td style="text-align: left">Split 3</td>
      <td style="text-align: left">7083, 6887, 14778, 2287</td>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">0.752\pm 0.025</code>$</td>
    </tr>
    <tr>
      <td style="text-align: left">Split 4</td>
      <td style="text-align: left">12877, 15577, 12960, 9593</td>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">0.702\pm 0.024</code>$</td>
    </tr>
    <tr>
      <td style="text-align: left">Split 5</td>
      <td style="text-align: left">8284, 9284, 11411, 9452</td>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">0.653\pm 0.008</code>$</td>
    </tr>
    <tr>
      <td style="text-align: left">Split 6</td>
      <td style="text-align: left">9710, 2643, 11111, 8196</td>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">0.589\pm 0.073</code>$</td>
    </tr>
  </tbody>
</table>

<p>Relevant training splits of the VessMAP dataset. Each row shows the average Dice score obtained on the remaining 96 samples when training a neural network using the four images indicated in the training set column. The standard deviation obtained across five repetitions of the training runs is also shown. {#tab:splits}</p>

<h1 id="conclusion">Conclusion</h1>

<p>Annotating appropriate images from a larger dataset for training machine learning algorithms is an important task. This is because the usual approach is to use as many images as possible. While this approach is relevant for general classification problems, for medical image segmentation, where image annotation can be very costly, the images used must be carefully selected in order to ensure good coverage of different tissue appearances and imaging variations. In addition, it is important that the annotated images do not lead to biases in downstream tasks related to tissue characterization. For instance, training segmentation algorithms mostly on prototypical images can lead to incorrect measurements on samples having unusual properties (e.g., very bright or very noisy).</p>

<p>We used an intuitive sampling methodology that evenly selects, as best as possible, both typical and atypical vascular image samples for creating VessMAP, a dataset containing a heterogeneous set of samples representing many possible variations of image noise and contrast as well as blood vessel density and intensity variance. One important characteristic of the dataset is that it provides an intuitive uniform grid in the feature space that can be used for further analyses. For example, one can study the accuracy of a segmentation model on different regions of the grid to identify regions where samples are not being correctly segmented. A robust algorithm should provide good segmentation no matter if a sample is too noisy, bright or dark, if it has low or high contrast, or any other variation on relevant image properties. The dataset is being made available together with the metadata containing the features used for creating the dataset.</p>

<p>We showed that different splits of the dataset can lead to largely distinct validation performances. The heterogeneity is particularly noticeable when training data is scarce. For many popular blood vessel datasets, the vasculature has similar characteristics throughout all samples. Thus, while they can be used for testing novel approaches for segmenting blood vessels, they are not ideal for quantifying the robustness of methods under small distribution shifts regarding sample characteristics and vessel geometry. Our analyses showed that VessMAP displays stronger appearance changes, with an average Dice score change of $<code class="language-plaintext highlighter-rouge">0.55</code>$, depending on the samples used for training. This result contrasts with the average Dice score difference of $<code class="language-plaintext highlighter-rouge">0.29</code>$ observed for the STARE dataset, the most heterogeneous dataset identified in the experiments after VessMAP.</p>

<p>One drawback of VessMAP is that the samples are relatively easy to segment. When training with more than 20 samples, the validation performance tends to be good and has little dependence on the training set. Thus, the usefulness of the dataset lies mostly in tasks with very limited training data. Another important consideration is that the features used to create the dataset are not necessarily related to the underlying conditions affecting the tissue samples (e.g., wild type, mutations, stroke, development stage) or to the acquisition process of the samples. Thus, obtaining good performance on the VessMAP dataset is important but not sufficient to conclude that a model is not biased on downstream tasks.</p>

<p>We expect that the dataset will be useful for studies regarding data distribution shifts as well as few-shot, interactive segmentation and active learning methods. We suggest two specific applications. Observing the official splits shown in Table <a href="#tab:splits">4</a>, it is clear that among the 100 samples, training on samples 4404, 11828, 16295, and 7344 (split 1) led to robust models displaying good segmentation accuracy on the remaining samples (Dice score of 0.846). The same is not true for most of the other samples in the dataset. An active learning method should be able to automatically identify these four samples since they lead to a very low annotation effort to segment the whole dataset with good accuracy.</p>

<p>Another interesting application is the automatic identification of segmentation mistakes. A common scenario in real applications is the following. A new dataset is provided and needs to be segmented for downstream analyses. Since manually annotating blood vessel samples is time-consuming, only a fraction of the samples are manually annotated. A segmentation model is then trained on the annotated samples and applied to the remaining images. But how do we verify that the annotated samples were enough to provide good accuracy on downstream analyses for the remaining data? Looking back at Table <a href="#tab:splits">4</a>, if the manually annotated samples are those of split 6, the performance of the model is known to be poor (Dice score of 0.589). Thus, one can develop additional heuristics to identify where the model is making mistakes. For instance, an interesting prospect is to analyze the topology of the vasculature and automatically identify missing segments, spurious branches and unrealistic connectivity patterns. The official splits of the vessMAP dataset allow a systematic comparison between methods developed by different research groups.</p>

<p>Interestingly, the splits in Table <a href="#tab:splits">4</a> represent different degrees of difficult for such methods. Split 6, with a Dice score of 0.589, should lead to clearly unrealistic connectivity patterns. However, the difference between splits 1 and 2 is likely more subtle, and automatically identifying segmentation mistakes in split 2 that are not on split 1 should be more challenging.</p>

<p>The VessMAP dataset might also be used for testing the performance of more general methods that were not developed specifically for segmenting blood vessels. Many large-scale biomedical datasets have been created in recent years (<a href="#ref-yang2023medmnist">Yang et al. 2023</a>; <a href="#ref-cheng2023sam"><span class="nocase">Cheng et al.</span> 2023</a>; <a href="#ref-wang2023sam"><span class="nocase">Wang et al.</span> 2023</a>; <a href="#ref-wasserthal2023totalsegmentator"><span class="nocase">Wasserthal et al.</span> 2023</a>; <a href="#ref-d2024totalsegmentator"><span class="nocase">D’Antonoli et al.</span> 2024</a>). Fluorescence microscopy samples are relatively uncommon in such datasets. Thus, the VessMAP dataset can be useful as an additional imaging modality for quantifying the performance of general methods.</p>

<h1 id="supplementary-material-additional-boxplots">Supplementary material: Additional boxplots.</h1>

<figure id="fig:boxplots_roc_auc" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Segmentation performance for all images of the datasets used in the experiments. Each vertical box represents the distribution of the area under the ROC curve obtained for a sample across 100 training runs. The bottom and top of each box represent, respectively, the first (<span class="math inline"><em>q</em><sub>1</sub></span>) and third (<span class="math inline"><em>q</em><sub>3</sub></span>) quartiles of the data. The horizontal green line indicates the median and the whiskers indicate the range <span class="math inline">[<em>q</em><sub>1</sub> − 1.5(<em>q</em><sub>3</sub> − <em>q</em><sub>1</sub>), <em>q</em><sub>3</sub> + 1.5(<em>q</em><sub>3</sub> − <em>q</em><sub>1</sub>)]</span>. The results are shown for the (a) VessMAP, (b) DRIVE, (c) STARE, and (d) CHASEDB1 datasets.</figcaption>
</figure>

<figure id="fig:boxplots_avg_precision" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Segmentation performance for all images of the datasets used in the experiments. Each vertical box represents the average precision obtained for a sample across 100 training runs. The values were calculated as the average precision obtained when setting the decision threshold to each unique probability value. The bottom and top of each box represent, respectively, the first (<span class="math inline"><em>q</em><sub>1</sub></span>) and third (<span class="math inline"><em>q</em><sub>3</sub></span>) quartiles of the data. The horizontal green line indicates the median and the whiskers indicate the range <span class="math inline">[<em>q</em><sub>1</sub> − 1.5(<em>q</em><sub>3</sub> − <em>q</em><sub>1</sub>), <em>q</em><sub>3</sub> + 1.5(<em>q</em><sub>3</sub> − <em>q</em><sub>1</sub>)]</span>. The results are shown for the (a) VessMAP, (b) DRIVE, (c) STARE, and (d) CHASEDB1 datasets.</figcaption>
</figure>

<div id="refs" class="references csl-bib-body hanging-indent">

<div id="ref-Adhikari2021" class="csl-entry">

Adhikari, Bishwo, Esa Rahtu, and Heikki Huttunen. 2021. “Sample Selection for Efficient Image Annotation.” *2021 9th European Workshop on Visual Information Processing (EUVIP)*, 1–6. <a href="https://doi.org/10.1109/EUVIP50544.2021.9484022">https://doi.org/10.1109/EUVIP50544.2021.9484022</a>.

</div>

<div id="ref-Antonelli2022" class="csl-entry">

Antonelli, Michela, Annika Reinke, Spyridon Bakas, et al. 2022. “The Medical Segmentation Decathlon.” *Nature Communications* 13 (1): 4128. <a href="https://doi.org/10.1038/s41467-022-30695-9">https://doi.org/10.1038/s41467-022-30695-9</a>.

</div>

<div id="ref-CarmonaDRIONSDB" class="csl-entry">

Carmona, Enrique J., Mariano Rincón, Julián García-Feijoó, and José M. Martínez-de-la-Casa. 2008. “Identification of the Optic Nerve Head with Genetic Algorithms.” *Artificial Intelligence in Medicine* 43 (3): 243–59. <a href="https://doi.org/10.1016/j.artmed.2008.04.005">https://doi.org/10.1016/j.artmed.2008.04.005</a>.

</div>

<div id="ref-Cervantes2023" class="csl-entry">

Cervantes, Jair, Jared Cervantes, Farid García-Lamont, Arturo Yee-Rendon, Josué Espejel Cabrera, and Laura Domínguez Jalili. 2023. “A Comprehensive Survey on Segmentation Techniques for Retinal Vessel Segmentation.” *Neurocomputing* 556: 126626. <a href="https://doi.org/10.1016/j.neucom.2023.126626">https://doi.org/10.1016/j.neucom.2023.126626</a>.

</div>

<div id="ref-Chaddad2023" class="csl-entry">

Chaddad, Ahmad, Jihao Peng, Jian Xu, and Ahmed Bouridane. 2023. “Survey of Explainable AI Techniques in Healthcare.” *Sensors* 23 (2). <a href="https://doi.org/10.3390/s23020634">https://doi.org/10.3390/s23020634</a>.

</div>

<div id="ref-Chatterjee2024" class="csl-entry">

Chatterjee, Soumick, Hendrik Mattern, Marc Dörner, et al. 2024. *SMILE-UHURA Challenge – Small Vessel Segmentation at Mesoscopic Scale from Ultra-High Resolution 7T Magnetic Resonance Angiograms*. <a href="https://arxiv.org/abs/2411.09593">https://arxiv.org/abs/2411.09593</a>.

</div>

<div id="ref-cheng2023sam" class="csl-entry">

<span class="nocase">Cheng, Junlong, Jin Ye, Zhongying Deng, et al.</span> 2023. “Sam-Med2d.” *arXiv Preprint arXiv:2308.16184*.

</div>

<div id="ref-d2024totalsegmentator" class="csl-entry">

<span class="nocase">D’Antonoli, Tugba Akinci, Lucas K Berger, Ashraya K Indrakanti, et al.</span> 2024. “TotalSegmentator MRI: Sequence-Independent Segmentation of 59 Anatomical Structures in MR Images.” *arXiv Preprint arXiv:2405.19492*.

</div>

<div id="ref-DaSilva2022" class="csl-entry">

<span class="nocase">da Silva, Matheus V., Julie Ouellette, Baptiste Lacoste, and Cesar H. Comin</span>. 2022. “An Analysis of the Influence of Transfer Learning When Measuring the Tortuosity of Blood Vessels.” *Computer Methods and Programs in Biomedicine* 225: 107021. <a href="https://doi.org/10.1016/j.cmpb.2022.107021">https://doi.org/10.1016/j.cmpb.2022.107021</a>.

</div>

<div id="ref-DePMendes2021" class="csl-entry">

<span class="nocase">de P. Mendes, Rodrigo, Xin Yuan, Elizabeth M. Genega, Xiaoyin Xu, Luciano da F. Costa, and Cesar H. Comin</span>. 2021. “Gland Context Networks: A Novel Approach for Improving Prostate Cancer Identification.” *Computerized Medical Imaging and Graphics* 94: 101999. <a href="https://doi.org/10.1016/j.compmedimag.2021.101999">https://doi.org/10.1016/j.compmedimag.2021.101999</a>.

</div>

<div id="ref-DecenciereMESSIDOR" class="csl-entry">

<span class="nocase">Decencière, Etienne, Xiwei Zhang, Guy Cazuguel, et al.</span> 2014. “FEEDBACK ON a PUBLICLY DISTRIBUTED IMAGE DATABASE: THE MESSIDOR DATABASE.” *Image Analysis and Stereology* 33 (3): 231–34. <a href="https://doi.org/10.5566/ias.1155">https://doi.org/10.5566/ias.1155</a>.

</div>

<div id="ref-Deng2009" class="csl-entry">

Deng, J., W. Dong, R. Socher, L.-J. Li, K. Li, and L. Fei-Fei. 2009. “ImageNet: A Large-Scale Hierarchical Image Database.” *CVPR09*.

</div>

<div id="ref-DiGiovanna2018" class="csl-entry">

Di Giovanna, Antonino Paolo, Alessandro Tibo, Ludovico Silvestri, et al. 2018. “Whole-Brain Vasculature Reconstruction at the Single Capillary Level.” *Scientific Reports* 8 (1): 12573.

</div>

<div id="ref-Dice1945" class="csl-entry">

Dice, Lee R. 1945. “<span class="nocase">Measures of the Amount of Ecologic Association Between Species</span>.” *Ecology* 26 (3): 297–302. <a href="https://doi.org/10.2307/1932409">https://doi.org/10.2307/1932409</a>.

</div>

<div id="ref-Donoho1994" class="csl-entry">

Donoho, David L, and Iain M Johnstone. 1994. “<span class="nocase">Ideal spatial adaptation by wavelet shrinkage</span>.” *Biometrika* 81 (3): 425–55. <a href="https://doi.org/10.1093/biomet/81.3.425">https://doi.org/10.1093/biomet/81.3.425</a>.

</div>

<div id="ref-Dosovitskiy2021" class="csl-entry">

Dosovitskiy, Alexey, Lucas Beyer, Alexander Kolesnikov, et al. 2021. *An Image Is Worth 16x16 Words: Transformers for Image Recognition at Scale*. <a href="https://arxiv.org/abs/2010.11929">https://arxiv.org/abs/2010.11929</a>.

</div>

<div id="ref-EstradaWIDE" class="csl-entry">

Estrada, Rolando, Michael J. Allingham, Priyatham S. Mettu, Scott W. Cousins, Carlo Tomasi, and Sina Farsiu. 2015. “Retinal Artery-Vein Classification via Topology Estimation.” *IEEE Transactions on Medical Imaging* 34 (12): 2518–34. <a href="https://doi.org/10.1109/TMI.2015.2443117">https://doi.org/10.1109/TMI.2015.2443117</a>.

</div>

<div id="ref-Fhima2024" class="csl-entry">

Fhima, Jonathan, Jan Van Eijgen, Marie-Isaline Billen Moulin-Romsée, et al. 2024. “LUNet: Deep Learning for the Segmentation of Arterioles and Venules in High Resolution Fundus Images.” *Physiological Measurement* 45 (5): 055002. <a href="https://doi.org/10.1088/1361-6579/ad3d28">https://doi.org/10.1088/1361-6579/ad3d28</a>.

</div>

<div id="ref-FrazCHASEBD1" class="csl-entry">

Fraz, Muhammad Moazam, Paolo Remagnino, Andreas Hoppe, et al. 2012a. “An Ensemble Classification-Based Approach Applied to Retinal Blood Vessel Segmentation.” *IEEE Transactions on Biomedical Engineering* 59 (9): 2538–48. <a href="https://doi.org/10.1109/TBME.2012.2205687">https://doi.org/10.1109/TBME.2012.2205687</a>.

</div>

<div id="ref-Fraz2012" class="csl-entry">

Fraz, Muhammad Moazam, Paolo Remagnino, Andreas Hoppe, et al. 2012b. “An Ensemble Classification-Based Approach Applied to Retinal Blood Vessel Segmentation.” *IEEE Transactions on Biomedical Engineering* 59 (9): 2538–48. <a href="https://doi.org/10.1109/TBME.2012.2205687">https://doi.org/10.1109/TBME.2012.2205687</a>.

</div>

<div id="ref-FreitasAndrade2022" class="csl-entry">

Freitas-Andrade, Moises, Cesar H. Comin, Matheus Viana da Silva, Luciano F. Fontoura Da Costa, and Baptiste Lacoste. 2022. “<span class="nocase">Unbiased analysis of mouse brain endothelial networks from two- or three-dimensional fluorescence images</span>.” *Neurophotonics* 9 (3): 031916. <a href="https://doi.org/10.1117/1.NPh.9.3.031916">https://doi.org/10.1117/1.NPh.9.3.031916</a>.

</div>

<div id="ref-galdran2022state" class="csl-entry">

Galdran, Adrian, André Anjos, José Dolz, Hadi Chakor, Hervé Lombaert, and Ismail Ben Ayed. 2022a. “State-of-the-Art Retinal Vessel Segmentation with Minimalistic Models.” *Scientific Reports* 12 (1): 6174.

</div>

<div id="ref-Galdran2022" class="csl-entry">

Galdran, Adrian, André Anjos, José Dolz, Hadi Chakor, Hervé Lombaert, and Ismail Ben Ayed. 2022b. “State-of-the-Art Retinal Vessel Segmentation with Minimalistic Models.” *Scientific Reports* 12 (1): 6174.

</div>

<div id="ref-Gewers2021" class="csl-entry">

Gewers, Felipe L., Gustavo R. Ferreira, Henrique F. De Arruda, et al. 2021. “Principal Component Analysis: A Natural Approach to Data Exploration.” *ACM Comput. Surv.* (New York, NY, USA) 54 (4). <a href="https://doi.org/10.1145/3447755">https://doi.org/10.1145/3447755</a>.

</div>

<div id="ref-GharleghiASOCA" class="csl-entry">

Gharleghi, Ramtin, Dona Adikari, Katy Ellenberger, et al. 2022. “Automated Segmentation of Normal and Diseased Coronary Arteries – the ASOCA Challenge.” *Computerized Medical Imaging and Graphics* 97: 102049. <a href="https://doi.org/10.1016/j.compmedimag.2022.102049">https://doi.org/10.1016/j.compmedimag.2022.102049</a>.

</div>

<div id="ref-Glandorf2024" class="csl-entry">

Glandorf, Lukas, Bastian Wittmann, Jeanne Droux, et al. 2024. “Bessel Beam Optical Coherence Microscopy Enables Multiscale Assessment of Cerebrovascular Network Morphology and Function.” *Light: Science &amp; Applications* 13 (1): 307. <a href="https://doi.org/10.1038/s41377-024-01649-1">https://doi.org/10.1038/s41377-024-01649-1</a>.

</div>

<div id="ref-Gouveia2017" class="csl-entry">

Gouveia, Ayden, Matthew Seegobin, Timal S. Kannangara, et al. 2017. “The aPKC-CBP Pathway Regulates Post-Stroke Neurovascular Remodeling and Functional Recovery.” *Stem Cell Reports* 9 (6): 1735–44. <a href="https://doi.org/10.1016/j.stemcr.2017.10.021">https://doi.org/10.1016/j.stemcr.2017.10.021</a>.

</div>

<div id="ref-Meta2024" class="csl-entry">

<span class="nocase">Grattafiori, Aaron, Abhimanyu Dubey, Abhinav Jauhri, et al.</span> 2024. *The Llama 3 Herd of Models*. <a href="https://arxiv.org/abs/2407.21783">https://arxiv.org/abs/2407.21783</a>.

</div>

<div id="ref-ForacchiaRETTORT" class="csl-entry">

Grisan, Enrico, Marco Foracchia, and Alfredo Ruggeri. 2008. “A Novel Method for the Automatic Grading of Retinal Vessel Tortuosity.” *IEEE Transactions on Medical Imaging* 27 (3): 310–19. <a href="https://doi.org/10.1109/TMI.2007.904657">https://doi.org/10.1109/TMI.2007.904657</a>.

</div>

<div id="ref-Guo2022" class="csl-entry">

Guo, Chengcheng, Bo Zhao, and Yanbing Bai. 2022. “DeepCore: A Comprehensive Library for Coreset Selection in Deep Learning.” In *Database and Expert Systems Applications*, edited by Christine Strauss, Alfredo Cuzzocrea, Gabriele Kotsis, A. Min Tjoa, and Ismail Khalil. Springer International Publishing.

</div>

<div id="ref-Gupta2019" class="csl-entry">

Gupta, Agrim, Piotr Dollár, and Ross Girshick. 2019. *LVIS: A Dataset for Large Vocabulary Instance Segmentation*. <a href="https://arxiv.org/abs/1908.03195">https://arxiv.org/abs/1908.03195</a>.

</div>

<div id="ref-HaftJavaherian2019" class="csl-entry">

Haft-Javaherian, Linjing AND Muse, Mohammad AND Fang. 2019. “Deep Convolutional Neural Networks for Segmenting 3D in Vivo Multiphoton Images of Vasculature in Alzheimer Disease Mouse Models.” *PLOS ONE* 14 (3): 1–21. <a href="https://doi.org/10.1371/journal.pone.0213539">https://doi.org/10.1371/journal.pone.0213539</a>.

</div>

<div id="ref-HamarnehVascuSynth" class="csl-entry">

Hamarneh, Ghassan, and Preet Jassi. 2010. “VascuSynth: Simulating Vascular Trees for Generating Volumetric Image Data with Ground Truth Segmentation and Tree Analysis.” *Computerized Medical Imaging and Graphics* 34 (8): 605–16. <a href="https://doi.org/10.1016/j.compmedimag.2010.06.002">https://doi.org/10.1016/j.compmedimag.2010.06.002</a>.

</div>

<div id="ref-He2016" class="csl-entry">

He, Kaiming, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. 2016. “Deep Residual Learning for Image Recognition.” *Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition*, 770–78.

</div>

<div id="ref-HolmDRHAGIS" class="csl-entry">

Holm, Sven, Greg Russell, Vincent Nourrit, and Niall McLoughlin. 2017. “<span class="nocase">DR HAGIS—a fundus image database for the automatic extraction of retinal surface vessels from diabetic patients</span>.” *Journal of Medical Imaging* 4 (1): 014503. <a href="https://doi.org/10.1117/1.JMI.4.1.014503">https://doi.org/10.1117/1.JMI.4.1.014503</a>.

</div>

<div id="ref-HooverSTARE" class="csl-entry">

Hoover, A. D., V. Kouznetsova, and M. Goldbaum. 2000. “Locating Blood Vessels in Retinal Images by Piecewise Threshold Probing of a Matched Filter Response.” *IEEE Transactions on Medical Imaging* 19 (3): 203–10. <a href="https://doi.org/10.1109/42.845178">https://doi.org/10.1109/42.845178</a>.

</div>

<div id="ref-Isensee2021" class="csl-entry">

Isensee, Fabian, Paul F Jaeger, Simon A A Kohl, Jens Petersen, and Klaus H Maier-Hein. 2021. “<span class="nocase">nnU-Net</span>: A Self-Configuring Method for Deep Learning-Based Biomedical Image Segmentation.” *Nature Methods* 18 (2): 203–11.

</div>

<div id="ref-KauppiDIARETDB1" class="csl-entry">

Kauppi, T., V. Kalesnykiene, J.-K. Kamarainen, et al. 2007. “The DIARETDB1 Diabetic Retinopathy Database and Evaluation Protocol.” *Proceedings of the British Machine Vision Conference*, 15.1–10.

</div>

<div id="ref-KauppiDIARETDB0" class="csl-entry">

Kauppi, Tomi, Valentina Kalesnykiene, Joni-Kristian Kämäräinen, et al. 2007. “DIARETDB 0 : Evaluation Database and Methodology for Diabetic Retinopathy Algorithms.” <a href="https://api.semanticscholar.org/CorpusID:573081">https://api.semanticscholar.org/CorpusID:573081</a>.

</div>

<div id="ref-Kingma2014" class="csl-entry">

Kingma, Diederik P. 2014. “Adam: A Method for Stochastic Optimization.” *arXiv Preprint arXiv:1412.6980*.

</div>

<div id="ref-KirstTUBEMAP" class="csl-entry">

Kirst, Christoph, Sophie Skriabine, Alba Vieites-Prado, et al. 2020. “Mapping the Fine-Scale Organization and Plasticity of the Brain Vasculature.” *Cell* 180 (4): 780–795.e25. <a href="https://doi.org/10.1016/j.cell.2020.01.028">https://doi.org/10.1016/j.cell.2020.01.028</a>.

</div>

<div id="ref-Kovacs2022" class="csl-entry">

Kovács, György, and Attila Fazekas. 2022. “A New Baseline for Retinal Vessel Segmentation: Numerical Identification and Correction of Methodological Inconsistencies Affecting 100+ Papers.” *Medical Image Analysis* 75: 102300. <a href="https://doi.org/10.1016/j.media.2021.102300">https://doi.org/10.1016/j.media.2021.102300</a>.

</div>

<div id="ref-Krestanova2020" class="csl-entry">

Krestanova, Alice, Jan Kubicek, and Marek Penhaker. 2020. “Recent Techniques and Trends for Retinal Blood Vessel Extraction and Tortuosity Evaluation: A Comprehensive Review.” *Ieee Access* 8: 197787–816.

</div>

<div id="ref-Kuo2023" class="csl-entry">

Kuo, Willy, Diego Rossinelli, Georg Schulz, et al. 2023. “Terabyte-Scale Supervised 3D Training and Benchmarking Dataset of the Mouse Kidney.” *Scientific Data* 10 (1): 510. <a href="https://doi.org/10.1038/s41597-023-02407-5">https://doi.org/10.1038/s41597-023-02407-5</a>.

</div>

<div id="ref-Lacoste2014" class="csl-entry">

Lacoste, Baptiste, Cesar H. Comin, Ayal Ben-Zvi, et al. 2014. “Sensory-Related Neural Activity Regulates the Structure of Vascular Networks in the Cerebral Cortex.” *Neuron* 83 (5): 1117–30. <a href="https://doi.org/10.1016/j.neuron.2014.07.034">https://doi.org/10.1016/j.neuron.2014.07.034</a>.

</div>

<div id="ref-Mosinska2018" class="csl-entry">

Mosinska, Agata, Pablo Marquez-Neila, Mateusz Koziński, and Pascal Fua. 2018. “Beyond the Pixel-Wise Loss for Topology-Aware Delineation.” *Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition*, 3136–45.

</div>

<div id="ref-NiemeijerROC" class="csl-entry">

Niemeijer, Meindert, Bram van Ginneken, Michael J. Cree, et al. 2010. “Retinopathy Online Challenge: Automatic Detection of Microaneurysms in Digital Color Fundus Photographs.” *IEEE Transactions on Medical Imaging* 29 (1): 185–95. <a href="https://doi.org/10.1109/TMI.2009.2033909">https://doi.org/10.1109/TMI.2009.2033909</a>.

</div>

<div id="ref-NiemeijerINSPIRE-AVR" class="csl-entry">

Niemeijer, Meindert, Xiayu Xu, Alina V. Dumitrescu, et al. 2011. “Automated Measurement of the Arteriolar-to-Venular Width Ratio in Digital Color Fundus Photographs.” *IEEE Transactions on Medical Imaging* 30 (11): 1941–50. <a href="https://doi.org/10.1109/TMI.2011.2159619">https://doi.org/10.1109/TMI.2011.2159619</a>.

</div>

<div id="ref-OdstrcilikHRF" class="csl-entry">

Odstrcilik, Jan, Radim Kolar, Attila Budai, et al. 2013. “Retinal Vessel Segmentation by Improved Matched Filtering: Evaluation on a New High-Resolution Fundus Image Database.” *IET Image Processing* 7 (4): 373–83. <a href="https://doi.org/10.1049/iet-ipr.2012.0455">https://doi.org/10.1049/iet-ipr.2012.0455</a>.

</div>

<div id="ref-Ouellette2020" class="csl-entry">

Ouellette, Julie, Xavier Toussay, Cesar H. Comin, et al. 2020. “Vascular Contributions to 16p11.2 Deletion Autism Syndrome Modeled in Mice.” *Nature Neuroscience* 23 (9): 1090–101. <a href="https://doi.org/10.1038/s41593-020-0663-1">https://doi.org/10.1038/s41593-020-0663-1</a>.

</div>

<div id="ref-Paetzold2021" class="csl-entry">

<span class="nocase">Paetzold, Johannes C., Julian McGinnis, Suprosanna Shit, et al.</span> 2021. “Whole Brain Vessel Graphs: A Dataset and Benchmark for Graph Learning and Neuroscience.” *Thirty-Fifth Conference on Neural Information Processing Systems Datasets and Benchmarks Track (Round 2)*. <a href="https://openreview.net/forum?id=jpwGODt2Av">https://openreview.net/forum?id=jpwGODt2Av</a>.

</div>

<div id="ref-Palagyi1998" class="csl-entry">

Palàgyi, Kàlmàn, and Attila Kuba. 1998. “A 3D 6-Subiteration Thinning Algorithm for Extracting Medial Lines.” *Pattern Recognition Letters* 19 (7): 613–27. <a href="https://doi.org/10.1016/S0167-8655(98)00031-2">https://doi.org/10.1016/S0167-8655(98)00031-2</a>.

</div>

<div id="ref-Perez-Beteta2018" class="csl-entry">

Pérez-Beteta, Julián, David Molina-Garcı́a, José A. Ortiz-Alhambra, et al. 2018. “Tumor Surface Regularity at MR Imaging Predicts Survival and Response to Surgery in Patients with Glioblastoma.” *Radiology* 288 (1): 218–25. <a href="https://doi.org/10.1148/radiol.2018171051">https://doi.org/10.1148/radiol.2018171051</a>.

</div>

<div id="ref-Poon2023" class="csl-entry">

Poon, Charissa, Petteri Teikari, Muhammad Febrian Rachmadi, Henrik Skibbe, and Kullervo Hynynen. 2023. “A Dataset of Rodent Cerebrovasculature from in Vivo Multiphoton Fluorescence Microscopy Imaging.” *Scientific Data* 10 (1): 141. <a href="https://doi.org/10.1038/s41597-023-02048-8">https://doi.org/10.1038/s41597-023-02048-8</a>.

</div>

<div id="ref-Radford2022" class="csl-entry">

Radford, Alec, Jong Wook Kim, Tao Xu, Greg Brockman, Christine McLeavey, and Ilya Sutskever. 2022. *Robust Speech Recognition via Large-Scale Weak Supervision*. <a href="https://arxiv.org/abs/2212.04356">https://arxiv.org/abs/2212.04356</a>.

</div>

<div id="ref-Raza2023" class="csl-entry">

Raza, Ali, Jamal Uddin, Abdullah Almuhaimeed, Shahid Akbar, Quan Zou, and Ashfaq Ahmad. 2023. “AIPs-SnTCN: Predicting Anti-Inflammatory Peptides Using fastText and Transformer Encoder-Based Hybrid Word Embedding with Self-Normalized Temporal Convolutional Networks.” *Journal of Chemical Information and Modeling* 63 (21): 6537–54. <a href="https://doi.org/10.1021/acs.jcim.3c01563">https://doi.org/10.1021/acs.jcim.3c01563</a>.

</div>

<div id="ref-Reinke2021" class="csl-entry">

<span class="nocase">Reinke, Annika, Minu D. Tizabi, Carole H. Sudre, et al.</span> 2021. *Common Limitations of Image Processing Metrics: A Picture Story*. arXiv. <a href="https://doi.org/10.48550/ARXIV.2104.05642">https://doi.org/10.48550/ARXIV.2104.05642</a>.

</div>

<div id="ref-Ronneberger2015" class="csl-entry">

Ronneberger, Olaf, Philipp Fischer, and Thomas Brox. 2015. “U-Net: Convolutional Networks for Biomedical Image Segmentation.” *Medical Image Computing and Computer-Assisted Intervention–MICCAI 2015: 18th International Conference, Munich, Germany, October 5-9, 2015, Proceedings, Part III 18*, 234–41.

</div>

<div id="ref-RudyantoVESSEL12" class="csl-entry">

<span class="nocase">Rudyanto, Rina D., Sjoerd Kerkstra, Eva M. van Rikxoort, et al.</span> 2014. “Comparing Algorithms for Automated Vessel Segmentation in Computed Tomography Scans of the Lung: The VESSEL12 Study.” *Medical Image Analysis* 18 (7): 1217–32. <a href="https://doi.org/10.1016/j.media.2014.07.003">https://doi.org/10.1016/j.media.2014.07.003</a>.

</div>

<div id="ref-Shamshad2023" class="csl-entry">

Shamshad, Fahad, Salman Khan, Syed Waqas Zamir, et al. 2023. “Transformers in Medical Imaging: A Survey.” *Medical Image Analysis* 88: 102802. <a href="https://doi.org/10.1016/j.media.2023.102802">https://doi.org/10.1016/j.media.2023.102802</a>.

</div>

<div id="ref-Shit2020" class="csl-entry">

Shit, Suprosanna, Johannes C. Paetzold, Anjany Sekuboyina, et al. 2020. “clDice - a Topology-Preserving Loss Function for Tubular Structure Segmentation.” *CoRR* abs/2003.07311. <a href="https://arxiv.org/abs/2003.07311">https://arxiv.org/abs/2003.07311</a>.

</div>

<div id="ref-Vessmap2023" class="csl-entry">

Silva, Matheus Viana da, Natália de Carvalho Santos, Baptiste Lacoste, and Cesar Henrique Comin. 2023. *VessMAP - Feature-Mapped Cortex Vasculature Dataset*. <a href="https://zenodo.org/records/10045265">Https://zenodo.org/records/10045265</a>.

</div>

<div id="ref-SolerIRCADb" class="csl-entry">

Soler, Luc, Alexandre Hostettler, Vincent Agnus, et al. 2010. *3D Image Reconstruction for Comparison of Algorithm Database: A Patient Specific Anatomical and Medical Image Database*. <a href="https://www-sop.inria.fr/geometrica/events/wam/abstract-ircad.pdf">Https://www-sop.inria.fr/geometrica/events/wam/abstract-ircad.pdf</a>.

</div>

<div id="ref-StaalDRIVE" class="csl-entry">

Staal, J., M. D. Abramoff, M. Niemeijer, M. A. Viergever, and B. van Ginneken. 2004. “Ridge-Based Vessel Segmentation in Color Images of the Retina.” *IEEE Transactions on Medical Imaging* 23 (4): 501–9. <a href="https://doi.org/10.1109/TMI.2004.825627">https://doi.org/10.1109/TMI.2004.825627</a>.

</div>

<div id="ref-Tetteh2020" class="csl-entry">

Tetteh, Giles, Velizar Efremov, Nils D. Forkert, et al. 2020. “DeepVesselNet: Vessel Segmentation, Centerline Prediction, and Bifurcation Detection in 3-d Angiographic Volumes.” *Frontiers in Neuroscience* 14. <a href="https://doi.org/10.3389/fnins.2020.592352">https://doi.org/10.3389/fnins.2020.592352</a>.

</div>

<div id="ref-TodorovVESSAP" class="csl-entry">

Todorov, Mihail Ivilinov, Johannes Christian Paetzold, Oliver Schoppe, et al. 2020. “Machine Learning Analysis of Whole Mouse Brain Vasculature.” *Nature Methods* 17 (4): 442–49.

</div>

<div id="ref-Vaswani2017" class="csl-entry">

Vaswani, Ashish, Noam Shazeer, Niki Parmar, et al. 2017. “Attention Is All You Need.” In *Advances in Neural Information Processing Systems*, edited by I. Guyon, U. Von Luxburg, S. Bengio, et al., vol. 30. Curran Associates, Inc. <a href="https://proceedings.neurips.cc/paper_files/paper/2017/file/3f5ee243547dee91fbd053c1c4a845aa-Paper.pdf">https://proceedings.neurips.cc/paper_files/paper/2017/file/3f5ee243547dee91fbd053c1c4a845aa-Paper.pdf</a>.

</div>

<div id="ref-VICAVR" class="csl-entry">

*<span class="nocase">VICAVR dataset</span>*. n.d. <a href="http://www.varpa.es/research/ophtalmology.html#vicavr">Http://www.varpa.es/research/ophtalmology.html#vicavr</a>.

</div>

<div id="ref-Wan2024" class="csl-entry">

Wan, Jia, Wanhua Li, Jason Ken Adhinarta, et al. 2024. *TriSAM: Tri-Plane SAM for Zero-Shot Cortical Blood Vessel Segmentation in VEM Images*. <a href="https://arxiv.org/abs/2401.13961">https://arxiv.org/abs/2401.13961</a>.

</div>

<div id="ref-wang2023sam" class="csl-entry">

<span class="nocase">Wang, Haoyu, Sizheng Guo, Jin Ye, et al.</span> 2023. “Sam-Med3d: Towards General-Purpose Segmentation Models for Volumetric Medical Images.” *arXiv Preprint arXiv:2310.15161v3*.

</div>

<div id="ref-wasserthal2023totalsegmentator" class="csl-entry">

<span class="nocase">Wasserthal, Jakob, Hanns-Christian Breit, Manfred T Meyer, et al.</span> 2023. “TotalSegmentator: Robust Segmentation of 104 Anatomic Structures in CT Images.” *Radiology: Artificial Intelligence* 5 (5).

</div>

<div id="ref-Xu2024" class="csl-entry">

Xu, Yan, Rixiang Quan, Weiting Xu, Yi Huang, Xiaolong Chen, and Fengyuan Liu. 2024. “Advances in Medical Image Segmentation: A Comprehensive Review of Traditional, Deep Learning and Hybrid Approaches.” *Bioengineering* 11 (10). <a href="https://doi.org/10.3390/bioengineering11101034">https://doi.org/10.3390/bioengineering11101034</a>.

</div>

<div id="ref-Yagis2024" class="csl-entry">

Yagis, Ekin, Shahab Aslani, Yashvardhan Jain, et al. 2024. “Deep Learning for 3D Vascular Segmentation in Phase Contrast Tomography.” In *Res Sq*. July.

</div>

<div id="ref-yang2023medmnist" class="csl-entry">

Yang, Jiancheng, Rui Shi, Donglai Wei, et al. 2023. “Medmnist V2-a Large-Scale Lightweight Benchmark for 2d and 3d Biomedical Image Classification.” *Scientific Data* 10 (1): 41.

</div>

<div id="ref-Yang2024" class="csl-entry">

Yang, Kaiyuan, Fabio Musio, Yihui Ma, et al. 2024. “Benchmarking the CoW with the TopCoW Challenge: Topology-Aware Anatomical Segmentation of the Circle of Willis for CTA and MRA.” In *ArXiv*. April.

</div>

<div id="ref-Yu2024" class="csl-entry">

Yu, Ruonan, Songhua Liu, and Xinchao Wang. 2024. “Dataset Distillation: A Comprehensive Review.” *IEEE Transactions on Pattern Analysis and Machine Intelligence* 46 (1): 150–70. <a href="https://doi.org/10.1109/TPAMI.2023.3323376">https://doi.org/10.1109/TPAMI.2023.3323376</a>.

</div>

<div id="ref-Zhang2024" class="csl-entry">

Zhang, Duzhen, Yahan Yu, Jiahua Dong, et al. 2024. “Mm-Llms: Recent Advances in Multimodal Large Language Models.” *arXiv Preprint arXiv:2401.13601*.

</div>

<div id="ref-ZhangIOSTARRCSLO" class="csl-entry">

Zhang, Jiong, Behdad Dashtbozorg, Erik Bekkers, Josien P. W. Pluim, Remco Duits, and Bart M. ter Haar Romeny. 2016. “Robust Retinal Vessel Segmentation via Locally Adaptive Derivative Frames in Orientation Scores.” *IEEE Transactions on Medical Imaging* 35 (12): 2631–44. <a href="https://doi.org/10.1109/TMI.2016.2587062">https://doi.org/10.1109/TMI.2016.2587062</a>.

</div>

<div id="ref-Zheng2019" class="csl-entry">

Zheng, Hao, Lin Yang, Jianxu Chen, et al. 2019. “Biomedical Image Segmentation via Representative Annotation.” *Proceedings of the AAAI Conference on Artificial Intelligence* 33: 5901–8.

</div>

</div>]]></content><author><name>Matheus Viana da Silva</name></author><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Artificial vascular image generation using blood vessel texture maps</title><link href="https://chcomin.github.io/publications/articles/2024-artificial-blood-vessels/" rel="alternate" type="text/html" title="Artificial vascular image generation using blood vessel texture maps" /><published>2024-12-01T00:00:00+00:00</published><updated>2024-12-01T00:00:00+00:00</updated><id>https://chcomin.github.io/publications/articles/2024-artificial-blood-vessels</id><content type="html" xml:base="https://chcomin.github.io/publications/articles/2024-artificial-blood-vessels/"><![CDATA[<h1 id="introduction">Introduction</h1>

<p>Generating accurate segmentations of blood vessels from digital images is an important task for diagnosis (<a href="#ref-mookiah2021review">Mookiah et al. 2021</a>; <a href="#ref-eladawi2018early">Eladawi et al. 2018</a>; <a href="#ref-sangeethaa2018intelligent">Sangeethaa and Uma Maheswari 2018</a>; <a href="#ref-li2021blood">Li et al. 2021</a>; <a href="#ref-almotiri2018multi">Almotiri et al. 2018</a>; <a href="#ref-nair2020blood">Nair and Muthuvel 2020</a>) as well as for developing precise measurements to support novel studies regarding the role of blood vessels on disease evolution (<a href="#ref-roda2021blood">Roda et al. 2021</a>; <a href="#ref-ouellette2020vascular"><span class="nocase">Ouellette et al.</span> 2020</a>; <a href="#ref-wong2019blood">Wong et al. 2019</a>; <a href="#ref-dolati2015pre">Dolati et al. 2015</a>). Current state-of-the-art approaches for segmentation involve training neural networks on manually annotated samples (<a href="#ref-mookiah2021review">Mookiah et al. 2021</a>). The samples used for training must represent well the distribution of the whole dataset so that the neural network can generalize to unseen samples. An important difficulty with such an approach is that the pixel-wise annotation of blood vessels is very costly.</p>

<p>One common approach to reduce the amount of samples that need to be manually annotated is to pre-train the network on artificially generated blood vessels (<a href="#ref-mou2021cs2"><span class="nocase">Mou et al.</span> 2021</a>; <a href="#ref-todorov2020machine"><span class="nocase">Todorov et al.</span> 2020</a>; <a href="#ref-chen2023all">Chen et al. 2023</a>; <a href="#ref-wijethilake2023deep">Wijethilake et al. 2023</a>). Given that blood vessels tend to have a tubular structure, a simple methodology for creating artificial vasculature is to randomly generate tubes with varying thickness and to blur the tubes with a smoothing filter (<a href="#ref-tetteh2020deepvesselnet">Tetteh et al. 2020</a>; <a href="#ref-sule2020effects">Sule et al. 2020</a>). More advanced techniques involve simulating the growth of vascular trees (<a href="#ref-schneider2012tissue">Schneider et al. 2012</a>) to generate images with accurate distribution of vessel geometries. Common to many approaches that have been developed is the focus on the <em>geometry</em> of the vessels, and not on the <em>appearance</em> of the vessels. One line of work that does focuses on appearance consists of different approaches for style transfer and image generation (<a href="#ref-tmenova2019cyclegan">Tmenova et al. 2019</a>; <a href="#ref-ma2019neural">Ma et al. 2019</a>; <a href="#ref-wu2022vessel">Wu et al. 2022</a>), but these techniques do not allow precise control of the generated vessels regarding properties such as vessel density, caliber, tortuosity, and local intensity changes. Furthermore, they require the development of an additional neural network training procedure for the generative model, which in practice requires hyperparameter tuning and can have poor performance for samples at the tail of the data distribution.</p>

<p>In this work, we develop a methodology for extracting the texture of manually annotated blood vessels from real samples and generating artificial images using the extracted textures. The method only requires the annotation of a few vessel segments of a dataset. Given a dataset containing blood vessel images with different appearances (example images are shown in Figure <a href="#f:motivation">1</a>), a common practice would be to annotate all blood vessels in some of the samples to train a segmentation algorithm. The developed method involves the annotation of one or a few vessel segments from some of the images, shown in green in Figure <a href="#f:motivation">1</a>. The annotations are used for generating artificial images containing blood vessels with the same texture as the annotated segments, which can then be used for pre-training neural networks. This allows the network to be adjusted to as many artificial images as desired, each image containing a rich set of blood vessel geometries and appearances. Notably, the annotations can be done in seconds, or a few minutes if a more diverse dataset is desired. The neural network may then be refined on a few fully annotated real samples.</p>

<figure id="f:motivation">
[Image omitted for text-only version]
<figcaption>Three fluorescence microscopy images containing blood vessels with different appearances. Green lines show example annotations of blood vessel segments.</figcaption>
</figure>

<p>The methodology involves creating standardized representations of the appearance of the vessels by mapping the annotated segments into a rectilinear grid. The result is called a <em>texture map</em> since it shares some similarities with texture maps in computer graphics (<a href="#ref-hughes2013computer">Hughes et al. 2013</a>). A procedure is then developed for associating a given texture map to a randomly generated Bézier curve. This is done by defining two corresponding sets of points, one for the texture map and one for the Bézier curve. A Delaunay triangulation is generated for each set of points, and linear transformations are estimated between pairs of corresponding triangles of the two sets of points. This procedure allows the generation of artificial vessels with varying geometries and realistic textures that can be systematically controlled.</p>

<p>We show that artificial images generated using the methodology are effective for pre-training neural networks. On a fluorescence microscopy dataset, images generated from only 5 annotated vessel segments, which corresponds to annotating 0.03% of the vessels in the dataset, lead to an average Dice score of 0.87$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02, which is close to the baseline value of 0.92 obtained when training using the fully annotated dataset. For a fundus photography dataset, an average Dice score of 0.74$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02 is achieved by annotating 10 maps (0.29% of the vessels), which is also close to the baseline value of 0.81 obtained when all vessels are annotated. While the manual annotation of the entire datasets can take weeks or months, 10 vessel segments can be annotated in under 5 minutes.</p>

<p>The code of the methodology and the obtained results are publicly available online<sup id="fnref:1" role="doc-noteref"><a href="#fn:1" class="footnote" rel="footnote">1</a></sup>.</p>

<h1 id="related-works">Related works</h1>

<p>In (<a href="#ref-galarreta2013three">Galarreta-Valverde et al. 2013</a>) the authors proposed a methodology that extended the traditional L-systems grammar (<a href="#ref-lindenmayer1968mathematical">Lindenmayer 1968</a>), which was used for synthesizing angiographic images simulating computed tomography and magnetic resonance images. The generation of synthetic vessels was aimed at assisting in validating segmentation algorithms and to be used in virtual surgeries.</p>

<p>Vessel tree simulators were used to compare artificially created data with real vascular trees (<a href="#ref-kocinski20123d">Kociński et al. 2012</a>). The authors approached the comparison using the texture properties of the trees’ geometry (not the vessels’ surface). They showed that the models had important correlations with different types of confocal brain tissue images. Vascular tree parameter changes were also observed between healthy and tumorous tissue.</p>

<p>A few recent works (<a href="#ref-mou2021cs2"><span class="nocase">Mou et al.</span> 2021</a>; <a href="#ref-todorov2020machine"><span class="nocase">Todorov et al.</span> 2020</a>; <a href="#ref-wijethilake2023deep">Wijethilake et al. 2023</a>) used biologically simulated vascular trees for training neural networks using the method of Schneider et al. (<a href="#ref-schneider2012tissue">Schneider et al. 2012</a>). The method consists of an iterative generation of arterial trees through two main processes: constructive (growth) and destructive (degeneration). Each vessel segment is modeled as a cylindrical tube and tissue metabolism demands drive the angiogenic process. For instance, in (<a href="#ref-tetteh2020deepvesselnet">Tetteh et al. 2020</a>) the model was used to simulate magnetic resonance angiography images, which were then used to train different neural network architectures. It was shown that the synthetic data greatly contributed to network pre-training.</p>

<p>The aforementioned works focused mostly on generating plausible geometries for the vessels. Usually, the texture is added using simple procedures such as blurring and Gaussian or Poisson noise. Another line of work considers the generation of vasculature with plausible geometry and appearance using generative adversarial networks (<a href="#ref-tmenova2019cyclegan">Tmenova et al. 2019</a>; <a href="#ref-ma2019neural">Ma et al. 2019</a>; <a href="#ref-wu2022vessel">Wu et al. 2022</a>; <a href="#ref-popescu2021retinal">Popescu et al. 2021</a>; <a href="#ref-zhao2018synthesizing">Zhao et al. 2018</a>). But the generated vessels cannot be tightly controlled, for instance, one cannot easily generate samples containing blood vessels with large tortuosity or with low-contrast segments (i.e., discontinuities). In addition, a new training procedure needs to be applied when there is a distribution shift in the data, such as when changing microscope parameters. Our model allows the precise control of the geometry of the vessels as well as the selection of specific texture patterns for the generated images.</p>

<h1 id="methodology">Methodology</h1>

<p>The method can be divided into five main steps. They are: (a) manual vessel delineation; (b) creation of vessel models; (c) generation of vessel texture maps, (d) transformation of the maps to follow randomly generated curves, and (e) insertion of the transformed maps into an artificially generated background. In the following sections, we describe each of the steps<sup id="fnref:2" role="doc-noteref"><a href="#fn:2" class="footnote" rel="footnote">2</a></sup>.</p>

<h2 id="manual-vessel-delineation">Manual vessel delineation</h2>

<p>The first step consists of manually annotating a few blood vessel segments. Segments are annotated by delineating their borders, as shown in Figure <a href="#f:motivation">1</a>. There is no need to annotate the whole segment, only a portion of the segment is enough to obtain its texture pattern. A simple graphical user interface was created for this task, which stores the pixel coordinates of the two delineated borders as a .json file, but the segments can be annotated on any software, provided a file containing the coordinates is generated. The sets of points from the annotated borders are represented as $<code class="language-plaintext highlighter-rouge">\tilde{P}_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">\tilde{P}_{b2}</code>$.</p>

<p>Vessels annotated from different images generate a dataset of vessel segments. The method can work with a single annotated segment, but additional segments can increase the diversity of the textures of the vessels on the artificial images. Thus, it is useful to annotate vessels from different images and having distinct appearances. In our experiments, five segments usually led to a good segmentation performance.</p>

<h2 id="generation-of-vessel-models">Generation of vessel models</h2>

<p>The manual delineations $<code class="language-plaintext highlighter-rouge">\tilde{P}_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">\tilde{P}_{b2}</code>$ are used for obtaining additional information about the vessels such as their medial lines and normal vectors at each border position. The set of all such information for a given vessel segment is henceforth called the <em>vessel model</em> of the segment. An example of a vessel model is shown in Figure <a href="#f:vessel_model">2</a>. The procedure used to generate a vessel model is explained next.</p>

<figure id="f:vessel_model" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Illustration of a vessel model. A precise delineation of the vessel border is represented in green, the vessel’s medial axis is represented in red, and normal vectors to each curve are represented as orange lines.</figcaption>
</figure>

<p>Depending on the annotation tool used, the points in $<code class="language-plaintext highlighter-rouge">\tilde{P}_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">\tilde{P}_{b2}</code>$ might not be equally spaced, and the annotations might be noisy due to the precision required to trace vessel borders. Thus, for creating the vessel model, the first step is to interpolate the manual delineation of the vessel borders, which is done using a two-stage procedure. A linear interpolation of the points is first performed to uniformly sample the manual annotations. Then, a cubic spline interpolation is performed on the result of the first interpolation. This two-stage interpolation is useful to make sure that the interpolated curves pass close to all manually marked points. In our implementation, the functions <em>splprep</em> and <em>splev</em> of the SciPy Python package were used.</p>

<p>Both interpolations have a parameter $<code class="language-plaintext highlighter-rouge">\delta</code>$ setting the distance between interpolated points, which equivalently sets the total number of points used in the interpolated curves. A value of $<code class="language-plaintext highlighter-rouge">\delta=1</code>$ pixel was used in all experiments since smaller values lead to redundant information due to the finite size of the image grid. The result of the interpolation process are two sets of points $<code class="language-plaintext highlighter-rouge">P_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">P_{b2}</code>$ representing high-resolution smooth curves describing the borders of the vessel segment.</p>

<p>For each point in $<code class="language-plaintext highlighter-rouge">P_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">P_{b2}</code>$, a normal vector to the curve at the position of the point is calculated using the spline representation of the curve. The two respective sets of normal vectors are represented as $<code class="language-plaintext highlighter-rouge">N_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">N_{b2}</code>$. Figure <a href="#f:vessel_model">2</a> shows in green the interpolated curves and in orange the normal vectors at each point.</p>

<p>Next, $<code class="language-plaintext highlighter-rouge">P_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">P_{b2}</code>$ are used to calculate the medial axis of the blood vessel, which is obtained using a Voronoi tessellation of the border points (<a href="#ref-tagliasacchi20163d">Tagliasacchi et al. 2016</a>). In our implementation, the Voronoi tessellation is calculated using the <em>Voronoi</em> class from the SciPy Python package. Figure <a href="#f:voronoi">3</a> shows an example of Voronoi tessellation of a vessel segment. The tessellation provides the medial axis with sub-pixel accuracy, which makes the following procedures more accurate. However, the points defining the medial axis are not equally spaced. Thus, the same two-stage interpolation applied to the manual delineations is applied to the medial axis using the same value of $<code class="language-plaintext highlighter-rouge">\delta</code>$. Respective normal vectors are also similarly calculated. The resulting sets of medial axis points and respective normal vectors are represented, respectively, as $<code class="language-plaintext highlighter-rouge">P_m</code>$ and $<code class="language-plaintext highlighter-rouge">N_m</code>$. They are illustrated in Figure <a href="#f:vessel_model">2</a>.</p>

<figure id="f:voronoi" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Example of Voronoi tessellation of vessel borders. The points used for the calculation are shown in black, they were obtained using <span class="math inline"><em>δ</em> = 2</span> in the interpolation for a better visualization of the tessellation. Yellow lines represent Voronoi cells. Red lines and points represent the calculated medial axis.</figcaption>
</figure>

<p>The three generated curves (two borders and one medial axis) represented by $<code class="language-plaintext highlighter-rouge">P_{b1}</code>$, $<code class="language-plaintext highlighter-rouge">P_{b2}</code>$ and $<code class="language-plaintext highlighter-rouge">P_m</code>$ as well as the normal vectors $<code class="language-plaintext highlighter-rouge">N_{b1}</code>$, $<code class="language-plaintext highlighter-rouge">N_{b2}</code>$ and $<code class="language-plaintext highlighter-rouge">N_m</code>$ are stored and define the vessel model of the segment.</p>

<h2 id="vessel-texture-map-creation">Vessel texture map creation</h2>

<p>Vessel models are used for generating vessel texture maps, which are images containing only the texture of the vessels. To do so, a coordinate system following the model geometry is defined. The medial axis defines one coordinate, while perpendicular lines to the medial axis define the second coordinate. The intensities of the vessel are then mapped into a new rectilinear grid. Figure <a href="#f:extraction_formulation_model">4</a> shows an illustration of the procedure. However, some important details need to be taken into account when generating the coordinates.</p>

<figure id="f:extraction_formulation_model" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Creation of a texture map using the coordinate system of the vessel. (a) The medial axis (red) defines one coordinate, and perpendicular lines to the medial axis define a second coordinate (yellow and blue). (b) The intensities of the vessel are mapped to a rectilinear grid. The central row of the resulting image always corresponds to the medial axis. Image columns correspond to the perpendicular lines in (a). In this illustration, a coarse grid of points was used for visual clarity. The distances between the points used in the actual implementation are all equal to one pixel.</figcaption>
</figure>

<p>First, a set of sampling lines perpendicular to the medial axis are created. Figure <a href="#f:extraction_formulation_model">4</a>(a) shows in yellow and blue examples of perpendicular lines. The normal vectors of the medial axis are used for defining a first guess for the direction of the lines. However, the normal of an axis point and the normals of corresponding border points might not be aligned. For instance, on high-curvature segments or when the border at one side significantly changes, the normal vector at the medial axis might lead to very distinct points at the opposing borders of the vessel.</p>

<p>To obtain a precise cross-section of the vessel at a medial axis point $<code class="language-plaintext highlighter-rouge">\mathbf{p}_m</code>$, we find the line that best aligns with the normal vector $<code class="language-plaintext highlighter-rouge">\mathbf{n}_m</code>$ at the point as well as the normals of the corresponding points at the border of the segment. The procedure used for finding the best-fitting line is described in Algorithm <a href="#a:cross_paths">5</a> and is illustrated in Figure <a href="#f:perpendicular_lines_training">6</a>. The algorithm receives as input the medial axis point $<code class="language-plaintext highlighter-rouge">\mathbf{p}_m</code>$ with respective normal $<code class="language-plaintext highlighter-rouge">\mathbf{n}_m</code>$ and the complete sets of border points $<code class="language-plaintext highlighter-rouge">P_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">P_{b2}</code>$ with their respective normals $<code class="language-plaintext highlighter-rouge">N_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">N_{b2}</code>$. A set of angles $<code class="language-plaintext highlighter-rouge">\Theta</code>$ is defined in the range $<code class="language-plaintext highlighter-rouge">[-45^\circ,45^\circ]</code>$ with steps of $<code class="language-plaintext highlighter-rouge">\Delta\theta=3^\circ</code>$ (line <a href="#acp_angles">[acp_angles]</a> of Algorithm <a href="#a:cross_paths">5</a>).</p>

<figure id="a:cross_paths" data-latex-placement="!h">
<div class="algorithm">
<div class="algorithmic">

</div>
</div>
<figcaption>Calculation of the optimal cross-section angle</figcaption>
</figure>

<figure id="f:perpendicular_lines_training" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Example of cross-section angle identification for the medial axis point indicated in red. Candidate directions are shown as dashed lines. The blue line leads to the best alignment between the medial axis normal (black line) and the normals at border points (purple arrows), and thus is chosen as the cross-section direction.</figcaption>
</figure>

<p>The medial point $<code class="language-plaintext highlighter-rouge">\mathbf{p}_m</code>$ and respective vector $<code class="language-plaintext highlighter-rouge">\mathbf{n}_m</code>$ define an initial candidate line for a cross-section of the vessel at point $<code class="language-plaintext highlighter-rouge">\mathbf{p}_m</code>$ (black line in Figure <a href="#f:perpendicular_lines_training">6</a>). For each angle $<code class="language-plaintext highlighter-rouge">\theta</code>$ in $<code class="language-plaintext highlighter-rouge">\Theta</code>$, the vector $<code class="language-plaintext highlighter-rouge">\mathbf{n}_m</code>$ is rotated by $<code class="language-plaintext highlighter-rouge">\theta</code>$ (line <a href="#acp_rot">[acp_rot]</a> of Algorithm <a href="#a:cross_paths">5</a>), thus defining a new candidate line for the cross-section of the vessel. Candidate lines are shown as dashed lines in Figure <a href="#f:perpendicular_lines_training">6</a>. The function <em>get_closest</em>($<code class="language-plaintext highlighter-rouge">\mathbf{p}_m</code>$, $<code class="language-plaintext highlighter-rouge">\mathbf{\tilde{n}}_m</code>$, $<code class="language-plaintext highlighter-rouge">P_{b1}</code>$) (line <a href="#acp_closest">[acp_closest]</a> of Algorithm <a href="#a:cross_paths">5</a>) returns the point $<code class="language-plaintext highlighter-rouge">\mathbf{p}_{b1}</code>$ in $<code class="language-plaintext highlighter-rouge">P_{b1}</code>$ with the smallest point-to-line distance to the line defined by $<code class="language-plaintext highlighter-rouge">\mathbf{p}_m</code>$ and $<code class="language-plaintext highlighter-rouge">\mathbf{\tilde{n}}_m</code>$. The same calculation is done for the other border, defining point $<code class="language-plaintext highlighter-rouge">\mathbf{p}_{b2}</code>$. The respective normals are also obtained (lines <a href="#acp_normal1">[acp_normal1]</a> and <a href="#acp_normal2">[acp_normal2]</a> of Algorithm <a href="#a:cross_paths">5</a>). Points $<code class="language-plaintext highlighter-rouge">\mathbf{p}_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">\mathbf{p}_{b2}</code>$ of each candidate line are shown as small brown dots in Figure <a href="#f:perpendicular_lines_training">6</a> and respective normals are shown as purple arrows.</p>

<p>The alignment between vectors $<code class="language-plaintext highlighter-rouge">\mathbf{\tilde{n}}_m</code>$, $<code class="language-plaintext highlighter-rouge">\mathbf{n}_m</code>$, $<code class="language-plaintext highlighter-rouge">\mathbf{n}_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">\mathbf{n}_{b2}</code>$ (line <a href="#acp_align">[acp_align]</a> of Algorithm <a href="#a:cross_paths">5</a>) is then calculated as</p>

<pre><code class="language-math">\begin{equation}
    e = 2\mathbf{n}_m\cdot\mathbf{\tilde{n}}_m + \mathbf{n}_{b1}\cdot\mathbf{\tilde{n}}_m + \mathbf{n}_{b2}\cdot\mathbf{\tilde{n}}_m,
\end{equation}
</code></pre>
<p>where $<code class="language-plaintext highlighter-rouge">\mathbf{x}\cdot \mathbf{y}</code>$ represents the dot product between $<code class="language-plaintext highlighter-rouge">\mathbf{x}</code>$ and $<code class="language-plaintext highlighter-rouge">\mathbf{y}</code>$. The equation represents the degree of alignment between the candidate line with direction represented by $<code class="language-plaintext highlighter-rouge">\mathbf{\tilde{n}}_m</code>$ and the normals of the medial and border points. A weight of 2 is used on $<code class="language-plaintext highlighter-rouge">\mathbf{n}_m\cdot\mathbf{\tilde{n}}_m</code>$ to slightly favor the alignment with the medial axis. The angle $<code class="language-plaintext highlighter-rouge">\theta_o</code>$ with the largest value of $<code class="language-plaintext highlighter-rouge">e</code>$ (line <a href="#acp_max">[acp_max]</a> of Algorithm <a href="#a:cross_paths">5</a>) defines the direction of the cross-section at point $<code class="language-plaintext highlighter-rouge">\mathbf{p}_m</code>$. This direction is illustrated as a blue line in Figure <a href="#f:perpendicular_lines_training">6</a>.</p>

<p>The identified cross-sectional lines together with the medial axis define a 2D coordinate system based on the vessel’s geometry. The medial axis represents a coordinate along the blood vessel, while the perpendicular lines represent a coordinate along cross-sections of the vessel. Sampling points are then created along each perpendicular line. Given a parameter $<code class="language-plaintext highlighter-rouge">r</code>$ setting the range of the perpendicular lines, that is, the distance between each endpoint of a line and the medial axis, the sampling points $<code class="language-plaintext highlighter-rouge">S=[-r, -r+\delta, \dots,r-\delta,r]</code>$ are created. The parameter $<code class="language-plaintext highlighter-rouge">\delta</code>$ sets the distance between points and is the same used when interpolating the border and medial axis points. The sampling points are then oriented according to the perpendicular lines found using Algorithm <a href="#a:cross_paths">5</a>. Examples of sampling points are shown as yellow dots in Figure <a href="#f:extraction_formulation_model">4</a>(a).</p>

<p>Each cross-sectional line can be mapped to a column of an output image. The number of sampling points in $<code class="language-plaintext highlighter-rouge">S</code>$ defines the number of rows of the image. An illustration is shown in Figure <a href="#f:extraction_formulation_model">4</a>(b). Thus, for each pixel of the output image, the corresponding intensity of the original annotated segment can be calculated using bilinear interpolation. In our implementation, this is done using the <em>map_coordinates</em> function of the SciPy Python package. The output image defines the vessel texture map $<code class="language-plaintext highlighter-rouge">M</code>$.</p>

<p>The main parameter of the map creation procedure is the range $<code class="language-plaintext highlighter-rouge">r</code>$ used for generating the cross-section sampling points. If $<code class="language-plaintext highlighter-rouge">r</code>$ is too small, the cross-section lines might not capture the whole vessel. The transformation also needs to capture some portion of the background of the image for the artificial image generation, but if $<code class="language-plaintext highlighter-rouge">r</code>$ is too large, other vessels might be included in the texture map, which will lead to artifacts. A good compromise is to use the largest diameter of the vessel segment together with an additional range of around 10 pixels to capture the background.</p>

<p>The sets of border points $<code class="language-plaintext highlighter-rouge">P_{b1}</code>$ and $<code class="language-plaintext highlighter-rouge">P_{b2}</code>$ are also projected onto the map. They are used for generating a segmentation mask for identifying pixels belonging to the vessel and to the background. Notice that it is not necessary to project the medial axis coordinates since it will always correspond to the middle row of the map.</p>

<h2 id="association-of-vessel-textures-to-arbitrary-curves">Association of vessel textures to arbitrary curves</h2>

<p>The texture maps can be used for generating textures for arbitrary curves. In our methodology we focused on Bézier curves, which are simple to implement and can faithfully represent the curvilinear structure of a vessel. A Bézier curve is defined by the initial and final points, $<code class="language-plaintext highlighter-rouge">\mathbf{p}_i</code>$ and $<code class="language-plaintext highlighter-rouge">\mathbf{p}_f</code>$, as well as a set $<code class="language-plaintext highlighter-rouge">P_c</code>$ of $<code class="language-plaintext highlighter-rouge">q</code>$ intermediate control points that control the geometry and the smoothness of the curve. The curve is created using Algorithm <a href="#a:bezier">7</a>. $<code class="language-plaintext highlighter-rouge">q</code>$ linearly spaced values are created in the range $<code class="language-plaintext highlighter-rouge">[0.2, 0.8]</code>$ (line <a href="#ab_ts">[ab_ts]</a> of Algorithm <a href="#a:bezier">7</a>). These values are used for defining $<code class="language-plaintext highlighter-rouge">q</code>$ respective points along a straight line between $<code class="language-plaintext highlighter-rouge">\mathbf{p}_i</code>$ and $<code class="language-plaintext highlighter-rouge">\mathbf{p}_f</code>$ (line <a href="#ab_pl">[ab_pl]</a> of Algorithm <a href="#a:bezier">7</a>). Each point is then displaced along a normal vector $<code class="language-plaintext highlighter-rouge">\mathbf{n}_l</code>$ to the straight line (line <a href="#ab_disp">[ab_disp]</a> of Algorithm <a href="#a:bezier">7</a>). The normal vector is a unit vector having a dot product with vector $<code class="language-plaintext highlighter-rouge">\mathbf{p}_f-\mathbf{p}_i</code>$ equal to zero. The translation amount is randomly drawn with uniform probability in the range $<code class="language-plaintext highlighter-rouge">[-d_{m},d_{m}]</code>$, where $<code class="language-plaintext highlighter-rouge">d_{m}</code>$ is a parameter of the method. Lower values of $<code class="language-plaintext highlighter-rouge">d_{m}</code>$ lead to more straight curves.</p>

<figure id="a:bezier" data-latex-placement="!h">
<div class="algorithm">

</div>
<figcaption>Bézier curve generation</figcaption>
</figure>

<p>A Bézier curve with order $<code class="language-plaintext highlighter-rouge">q+1</code>$ can then be defined using control points $<code class="language-plaintext highlighter-rouge">\mathbf{p}_i</code>$, $<code class="language-plaintext highlighter-rouge">\mathbf{p}_f</code>$ and $<code class="language-plaintext highlighter-rouge">P_c</code>$. The application of the curve for transforming the maps requires a set of sampling points along the curve. Thus, for any given curve, $<code class="language-plaintext highlighter-rouge">n_p=100</code>$ uniformly spaced points between the initial and final points are created along the curve. The generated points of the curve are represented as $<code class="language-plaintext highlighter-rouge">P_r</code>$.</p>

<p>Given a vessel map $<code class="language-plaintext highlighter-rouge">M</code>$ and the points $<code class="language-plaintext highlighter-rouge">P_r</code>$, a procedure is defined to transform the map to follow the geometry of the curve. To do so, we first create two new curves by shifting points $<code class="language-plaintext highlighter-rouge">P_r</code>$ to the left-hand and right-hand sides of the original curve. Figure <a href="#f:trace_13">8</a> shows an example of the resulting geometry. The curves are created by finding all points with a point-to-line distance of $<code class="language-plaintext highlighter-rouge">d_b</code>$ to the original Bézier curve, where $<code class="language-plaintext highlighter-rouge">d_b</code>$ is given by half the number of rows of the vessel map. Then, all points having the endpoints of the Bézier curve as the closest points to them are removed. This defines two curves, which are then linearly interpolated to have the same number of points $<code class="language-plaintext highlighter-rouge">n_p</code>$ as $<code class="language-plaintext highlighter-rouge">P_r</code>$. The set of the three generated curves is called the <em>vessel geometry</em>. The points defining the three curves, and respective vessel geometry, are all represented by the set $<code class="language-plaintext highlighter-rouge">P_g</code>$.</p>

<figure id="f:trace_13" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Example of a generated vessel geometry. The central curve is generated using Algorithm <a href="#a:bezier">7</a>. The green curves are translated versions of the central curve.</figcaption>
</figure>

<p>Having obtained points $<code class="language-plaintext highlighter-rouge">P_g</code>$, a respective set of points $<code class="language-plaintext highlighter-rouge">P_v</code>$ needs to be defined for the vessel map with a one-to-one correspondence with points in $<code class="language-plaintext highlighter-rouge">P_g</code>$ so that the intensities can be transformed from the map to the curve. Before defining $<code class="language-plaintext highlighter-rouge">P_v</code>$, it is important to observe that the length of the Bézier curve, measured as the path length along the curve, and the length of the vessel map, measured as the number of columns of the map, are usually distinct. Thus, the vessel map is expanded to have the same length as the Bézier curve. This is done by repeating the map column-wise the number of times required for the lengths to be compatible.</p>

<p>Representing as $<code class="language-plaintext highlighter-rouge">c</code>$ the number of columns of the vessel map, $<code class="language-plaintext highlighter-rouge">n_p</code>$ sampling points are defined at row 0 of the map and at the column positions $<code class="language-plaintext highlighter-rouge">[0, \Delta_s, 2\Delta_s,\dots,(n_p-1)\Delta_s]</code>$, where $<code class="language-plaintext highlighter-rouge">\Delta_s=(c-1)/(n_p-1)</code>$. That is, $<code class="language-plaintext highlighter-rouge">n_p</code>$ points are created along the first row of the map with equal spacing between them from column positions 0 to $<code class="language-plaintext highlighter-rouge">c-1</code>$ (the last column of the map). The same procedure is repeated for the middle and last row of the map. Set $<code class="language-plaintext highlighter-rouge">P_v</code>$ is composed of the created points. Figure <a href="#f:delaunay_with_artefacts_zoom">9</a>(a) shows in red, yellow, and blue the points in $<code class="language-plaintext highlighter-rouge">P_v</code>$.</p>

<p>Having points $<code class="language-plaintext highlighter-rouge">P_g</code>$ and $<code class="language-plaintext highlighter-rouge">P_v</code>$, with a one-to-one correspondence between them, a Delaunay triangulation of each set of points is calculated. This defines two sets of triangles, also with a one-to-one correspondence. For each pair of triangles (one from the map and the other from the curve), an affine transform is estimated and the intensities are mapped using bilinear interpolation. In our implementation, this procedure is applied using the class <em>PiecewiseAffineTransform</em> and the <em>warp</em> function of the scikit-image Python package. Figure <a href="#f:delaunay_with_artefacts_zoom">9</a> shows an example triangulation of the original map and the Bézier curve together with the transformed image.</p>

<figure id="f:delaunay_with_artefacts_zoom">
[Image omitted for text-only version]
<figcaption>Example of map transformation. (a) Original map, with points <span class="math inline"><em>P</em><sub><em>v</em></sub></span> represented by circles. (b) Transformed map, with points <span class="math inline"><em>P</em><sub><em>g</em></sub></span> also represented by circles. Orange lines represent the Delaunay triangulation of the points. The triangles highlighted in green in both images are a transformed version of each other.</figcaption>
</figure>

<p>The Delaunay triangulation might present some artifacts because points that are on different parts of the border might generate triangles that are outside the curve. These triangles can be seen on the right side of Figure <a href="#f:delaunay_with_artefacts_zoom">9</a>(b). These artifacts were removed by zeroing all pixels outside the vessel geometry.</p>

<p>Besides the vessel texture, it is also necessary to map the location of vessel pixels so that a corresponding binary image can be created and used as a target for segmentation algorithms. This is done by creating a binary vessel image from the map image. This is simple since we have the position of the vessel borders on the map. The binary image is then transformed using the same transformation applied to the grayscale image, but using a nearest neighbor interpolation. Figure <a href="#f:transformation">10</a> shows an example of a transformed map and transformed binary vessel.</p>

<figure id="f:transformation" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Example of a transformed map and binary vessel mask. Notice that the transformed map includes the vessel and, by design, a portion of the background of the original image which the map was extracted from.</figcaption>
</figure>

<h2 id="generation-of-artificial-images-using-the-transformed-vessel-maps">Generation of artificial images using the transformed vessel maps</h2>

<p>Having a collection of transformed maps, it is possible to insert them into an image to generate a realistic vasculature tissue image. One possibility is to generate a vascular tree and place the maps on each vessel segment of the tree. However, blood vessel identification is usually implemented as a semantic segmentation task. This is because digital samples usually contain only a portion of the vasculature of a tissue. In addition, for most biological tissues, the vasculature does not have a standard geometry at the typical scales captured by most imaging modalities. Therefore, we consider that the global geometry of the generated artificial images is not particularly relevant for vessel segmentation methods. Local properties such as the curvature, caliber, border definition, and texture are likely more relevant. This is particularly true for Convolutional Neural Networks, which are known to be more biased towards local features (<a href="#ref-islam2021shape">Islam et al. 2021</a>; <a href="#ref-geirhos2018imagenet">Geirhos et al. 2018</a>). Thus, we generate artificial images by randomly placing texture maps into an image, without following a global vascular structure.</p>

<p>The only remaining step is to generate an artificial background image $<code class="language-plaintext highlighter-rouge">B</code>$ to insert the maps into. This can be done in several ways. For instance, it is possible to generate a random image with values drawn from a normal distribution. One can also annotate a few background regions from a sample and replicate these regions multiple times to generate a full image.</p>

<p>Note that since the transformed maps include some portion of the background of the samples they were extracted from, the artificial background image does not need to be realistic. The main challenge of the segmentation algorithm will be to segment the vessel from the texture map background, and not from the artificial background. Thus, we do not consider the artificial background generation as part of our methodology. In the experiments, we used a simple methodology to create $<code class="language-plaintext highlighter-rouge">B</code>$, consisting of dividing a real sample into small windows and replacing windows containing blood vessels with windows that did not contain blood vessels. It is important to notice that the size of $<code class="language-plaintext highlighter-rouge">B</code>$ defines the size of the final artificial blood vessel image.</p>

<p>To generate images without a sharp change in intensity between the artificial background and the map background, before insertion onto the background the maps are normalized as</p>

<pre><code class="language-math">\begin{equation}
    \tilde{M} = M - \mu_m + \mu_b,
\end{equation}
</code></pre>
<p>where $<code class="language-plaintext highlighter-rouge">\mu_m</code>$ and $<code class="language-plaintext highlighter-rouge">\mu_b</code>$ are the average intensity of, respectively, the map’s background and the artificial background image. A normalization using the standard deviation of the intensities may also be used in case the intensities of the vessel maps have a larger standard deviation than the artificial background.</p>

<p>The procedure used for generating an artificial image is summarized in Algorithm <a href="#a:generation">11</a>. The algorithm receives as input a database of texture maps $<code class="language-plaintext highlighter-rouge">\mathcal{M}</code>$, the number of maps $<code class="language-plaintext highlighter-rouge">m</code>$ to use, an initial background image $<code class="language-plaintext highlighter-rouge">B</code>$, the number of vessels $<code class="language-plaintext highlighter-rouge">n_v</code>$ to insert, the minimum length $<code class="language-plaintext highlighter-rouge">s_l</code>$ of the artificial vessels and the $<code class="language-plaintext highlighter-rouge">q</code>$ and $<code class="language-plaintext highlighter-rouge">d_m</code>$ parameters for the Bézier curve generation. First, a subset $<code class="language-plaintext highlighter-rouge">\tilde{\mathcal{M}}</code>$ of $<code class="language-plaintext highlighter-rouge">m</code>$ texture maps is randomly drawn from $<code class="language-plaintext highlighter-rouge">\mathcal{M}</code>$ (line <a href="#gen_sub">[gen_sub]</a> of Algorithm <a href="#a:generation">11</a>). A value $<code class="language-plaintext highlighter-rouge">s_m</code>$ setting the maximum length of the vessel geometries is then calculated (line <a href="#gen_s">[gen_s]</a> of Algorithm <a href="#a:generation">11</a>). It is given by the number of rows or columns of the image, whichever is larger.</p>

<figure id="a:generation" data-latex-placement="!h">
<div class="algorithm">

</div>
<figcaption>Artificial image generation</figcaption>
</figure>

<p>For each vessel to be inserted into the image, the length $<code class="language-plaintext highlighter-rouge">d_e</code>$ of the vessel is drawn with uniform probability in the range $<code class="language-plaintext highlighter-rouge">[s_l,s_m]</code>$. The function <em>get_endpoints</em> (line <a href="#gen_ends">[gen_ends]</a> of Algorithm <a href="#a:generation">11</a>) randomly generates two points $<code class="language-plaintext highlighter-rouge">\mathbf{p}_i</code>$ and $<code class="language-plaintext highlighter-rouge">\mathbf{p}_f</code>$ with distance $<code class="language-plaintext highlighter-rouge">d_e</code>$ between them. Next, the geometry of the vessel $<code class="language-plaintext highlighter-rouge">P_g</code>$ is generated by the function <em>generate_geometry</em> using the methodology presented in Section <a href="#s:map_transf">3.4</a>. One texture map is then randomly drawn from the set of available maps. The map is transformed into the artificial geometry by the <em>transform</em> function using the method presented in Section <a href="#s:map_transf">3.4</a> and inserted into the image $<code class="language-plaintext highlighter-rouge">I</code>$.</p>

<p>The result is an artificial image containing the inserted blood vessel textures. Parameters $<code class="language-plaintext highlighter-rouge">n_v</code>$, $<code class="language-plaintext highlighter-rouge">s_l</code>$, $<code class="language-plaintext highlighter-rouge">q</code>$, and $<code class="language-plaintext highlighter-rouge">d_m</code>$ can be set according to the density and typical curvatures of the vessels from the real dataset. Parameter $<code class="language-plaintext highlighter-rouge">m</code>$ should be as large as possible since the diversity of the textures is increased. However, larger $<code class="language-plaintext highlighter-rouge">m</code>$ requires more annotated vessel segments.</p>

<h1 id="results-and-discussion">Results and Discussion</h1>

<p>In this section, we present the results of the vessel model and texture map creation methods. We also show that the generated artificial images can be used to efficiently train neural networks. The experiments were conducted on an AMD Ryzen 5 5600G 3.90 GHz CPU with 16.0GiB RAM, except for the training and validation of neural networks, which were executed on an Intel I9 12900K 3.20 GHz CPU with an RTX 3090 GPU. Versions 1.10 and 0.21 of, respectively the SciPy and scikit-image Python packages were used.</p>

<h2 id="datasets">Datasets</h2>

<p>Three datasets are used to show the potential of the methodology. The first dataset is composed of 50 confocal microscopy images of the mouse cortex. The images have a size of 1376 $<code class="language-plaintext highlighter-rouge">\times</code>$ 1104 pixels, with each pixel representing 0.908 $<code class="language-plaintext highlighter-rouge">\times</code>$ 0.908 $<code class="language-plaintext highlighter-rouge">\mu</code>$m. Details about the image acquisition procedure can be found in (<a href="#ref-freitas2022unbiased">Freitas-Andrade et al. 2022</a>). This dataset is challenging because the blood vessels do not have well-defined borders and some samples have low contrast. Figure <a href="#f:database_image_2">12</a> contains examples of images from the dataset. This dataset is henceforth called <em>CORTEX</em>.</p>

<figure id="f:database_image_2" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Examples of images from the CORTEX dataset.</figcaption>
</figure>

<p>We also use the DRIVE dataset (<a href="#ref-StaalDRIVE">Staal et al. 2004</a>), one of the most popular datasets for evaluating blood vessel segmentation algorithms. The dataset contains 20 training and 20 test color fundus photographs, each image having a size of 584 $<code class="language-plaintext highlighter-rouge">\times</code>$ 565 pixels. Following common practice in the literature, only the green channel of the images was used. The fundus images from the DRIVE dataset are markedly distinct from the microscopy images from the CORTEX dataset. Thick vessels tend to have better contrast with the background when compared to the CORTEX dataset, but the DRIVE images contain a larger number of very thin vessels, which tend to be difficult to segment.</p>

<p>As discussed above, one of the motivations for our method is to improve upon the common pre-training procedure of generating artificial vessels with trivial textures. Thus, we also compare our method with a technique used by recent works to simulate artificial vessels (<a href="#ref-mou2021cs2"><span class="nocase">Mou et al.</span> 2021</a>; <a href="#ref-todorov2020machine"><span class="nocase">Todorov et al.</span> 2020</a>; <a href="#ref-wijethilake2023deep">Wijethilake et al. 2023</a>), which we refer to as <em>TREE</em>. The technique consists of using the method of Schneider et al. (<a href="#ref-schneider2012tissue">Schneider et al. 2012</a>) to generate realistic artificial vascular trees. A Gaussian blur followed by Gaussian noise is then applied to the images. In (<a href="#ref-tetteh2020deepvesselnet">Tetteh et al. 2020</a>) a dataset containing 136 artificial samples was generated using the artificial tree method and made available online. We use this dataset in the experiments.</p>

<p>The CORTEX dataset is used in the following sections to provide examples of artificial images generated using the proposed methodology. All three datasets are used in Section <a href="#s:res_net">4.6</a> to quantify the potential of the method for pre-training neural networks.</p>

<h2 id="vessel-models">Vessel models</h2>

<p>To measure the typical time spent on manual annotation of vessel segments, six annotators were asked to delineate 3 vessel segments in a given image from the CORTEX dataset, and we recorded the time taken for the annotation of the vessels. The results are shown in Table <a href="#a:mensuration">1</a>. Overall, the annotation of a vessel segment takes an average of 27 seconds, with the time varying according to the characteristics of the vessel. Vessels with larger dimensions or that are very tortuous tend to take more time to be annotated.</p>

<table id="a:mensuration">
<caption>Vessel segment annotation time for six annotators and three vessel segments.</caption>
<thead>
<tr>
<th colspan="5" style="text-align: center;">Annotation time in seconds</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;"></td>
<td style="text-align: center;">Vessel one</td>
<td style="text-align: center;">Vessel two</td>
<td style="text-align: center;">Vessel three</td>
<td style="text-align: center;">Average</td>
</tr>
<tr>
<td style="text-align: left;">Annotator one</td>
<td style="text-align: center;">11.86</td>
<td style="text-align: center;">11.22</td>
<td style="text-align: center;">10.8</td>
<td style="text-align: center;">11.29</td>
</tr>
<tr>
<td style="text-align: left;">Annotator two</td>
<td style="text-align: center;">30</td>
<td style="text-align: center;">34</td>
<td style="text-align: center;">33</td>
<td style="text-align: center;">32.33</td>
</tr>
<tr>
<td style="text-align: left;">Annotator three</td>
<td style="text-align: center;">51.16</td>
<td style="text-align: center;">28.55</td>
<td style="text-align: center;">31</td>
<td style="text-align: center;">36.90</td>
</tr>
<tr>
<td style="text-align: left;">Annotator four</td>
<td style="text-align: center;">27.69</td>
<td style="text-align: center;">27.75</td>
<td style="text-align: center;">27.65</td>
<td style="text-align: center;">27.70</td>
</tr>
<tr>
<td style="text-align: left;">Annotator five</td>
<td style="text-align: center;">21.48</td>
<td style="text-align: center;">22.49</td>
<td style="text-align: center;">32.28</td>
<td style="text-align: center;">25.42</td>
</tr>
<tr>
<td style="text-align: left;">Annotator six</td>
<td style="text-align: center;">24.42</td>
<td style="text-align: center;">17.98</td>
<td style="text-align: center;">38.47</td>
<td style="text-align: center;">26.96</td>
</tr>
</tbody>
</table>

<p>For the following experiments, a total of 343 vessel segments were annotated from the 50 images in the CORTEX dataset by a single annotator. On average, between 5 and 8 vessels were annotated for each image. The minimum and maximum caliber of the vessels were, respectively 4.1 and 25.59 pixels, with an overall average caliber of 8.65 pixels.</p>

<p>A vessel model was created for each annotated segment. Figure <a href="#f:models">13</a> shows examples of created models. It is important to have a rich set of vessel models. Thus, we annotated vessels with large variations of intensity, contrast, tortuosity, caliber, and noise amount.</p>

<figure id="f:models" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Vessel models generated from manual annotations.</figcaption>
</figure>

<h2 id="vessel-texture-maps">Vessel texture maps</h2>

<p>The vessel models were used for generating respective vessel texture maps. The database of 343 vessel texture maps obtained is represented as $<code class="language-plaintext highlighter-rouge">\mathcal{M}</code>$. Figure <a href="#f:vessel_models">14</a> shows examples of vessel maps from $<code class="language-plaintext highlighter-rouge">\mathcal{M}</code>$. Each vessel map contains the intensities of the vessel segment and, by design, the background of the sample which the vessel was extracted from. The manual annotation indicating the borders of the vessel is also stored together with the texture map. Again, it is important to have maps containing vessels with varying characteristics since this allows the generation of a diverse set of artificial images.</p>

<figure id="f:vessel_models" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Examples of vessel texture maps.</figcaption>
</figure>

<h2 id="vessel-geometries">Vessel geometries</h2>

<p>Vessel geometries were generated by randomly drawing the initial and final points $<code class="language-plaintext highlighter-rouge">\mathbf{p}_i</code>$ and $<code class="language-plaintext highlighter-rouge">\mathbf{p}_f</code>$ of the Bézier curves such that the Euclidean distance $<code class="language-plaintext highlighter-rouge">d_e</code>$ between the points was in the range $<code class="language-plaintext highlighter-rouge">[500,1376]</code>$ pixels. Figure <a href="#f:different_strokes">15</a> shows examples of geometries that can be generated. $<code class="language-plaintext highlighter-rouge">q=30</code>$ control points were used for the curve in Figure <a href="#f:different_strokes">15</a>(a), while $<code class="language-plaintext highlighter-rouge">q=2</code>$ was used for the curve in Figure <a href="#f:different_strokes">15</a>(b). The number of control points has a large impact on tortuosity. Figures <a href="#f:different_strokes">15</a>(c), <a href="#f:different_strokes">15</a>(d), and <a href="#f:different_strokes">15</a>(e) show curves with $<code class="language-plaintext highlighter-rouge">q=6</code>$ and different values of $<code class="language-plaintext highlighter-rouge">d_m</code>$, which controls the maximum distance between control points and a straight line between the initial and final points. Lower $<code class="language-plaintext highlighter-rouge">d_m</code>$ values lead to straighter vessels.</p>

<figure id="f:different_strokes" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Examples of generated vessel geometries. Curves (a) and (b) have, respectively <span class="math inline"><em>q</em> = 30</span> and <span class="math inline"><em>q</em> = 2</span> control points. Curves (c), (d), and (e) were generated with <span class="math inline"><em>q</em> = 6</span> and, respectively, maximum control point displacements of <span class="math inline"><em>d</em><sub><em>m</em></sub> = 1</span>, <span class="math inline"><em>d</em><sub><em>m</em></sub> = 100</span>, and <span class="math inline"><em>d</em><sub><em>m</em></sub> = 250</span>.</figcaption>
</figure>

<p>For the remainder of the experiments, we used $<code class="language-plaintext highlighter-rouge">q=6</code>$ and $<code class="language-plaintext highlighter-rouge">d_m=500</code>$ for generating the geometries.</p>

<h2 id="artificial-image-generation">Artificial image generation</h2>

<p>Several artificial images with realistic textures were generated using Algorithm <a href="#a:generation">11</a>. We considered different situations according to the number of annotations $<code class="language-plaintext highlighter-rouge">m</code>$ (and respective vessel maps) required for generating the images. We considered situations where only a single annotation is used ($<code class="language-plaintext highlighter-rouge">m=1</code>$), as well as situations where $<code class="language-plaintext highlighter-rouge">m=5</code>$, $<code class="language-plaintext highlighter-rouge">m=10</code>$, and $<code class="language-plaintext highlighter-rouge">m=160</code>$ annotations are used. The annotations used were randomly drawn from the $<code class="language-plaintext highlighter-rouge">\mathcal{M}</code>$ set of 343 annotations. The number of vessels $<code class="language-plaintext highlighter-rouge">n_v</code>$ inserted into each image was randomly drawn with uniform probability in the range $<code class="language-plaintext highlighter-rouge">[20,50]</code>$ and the minimum vessel length used was $<code class="language-plaintext highlighter-rouge">s_l=500</code>$.</p>

<p>The results are images containing $<code class="language-plaintext highlighter-rouge">n_v</code>$ artificial vessels. Figure <a href="#f:artificial_maps_created_from_1_map">16</a> shows examples of images generated from a single annotated vessel segment ($<code class="language-plaintext highlighter-rouge">m=1</code>$). In this case, all vessels in the image have the same texture but different geometries. Interestingly, these images can be used for investigating the performance of segmentation algorithms when only the geometry of the blood vessels changes throughout the images.</p>

<figure id="f:artificial_maps_created_from_1_map" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Examples of images generated from a single annotated vessel segment.</figcaption>
</figure>

<p>Figure <a href="#f:background_with_artificial_vessels">17</a> shows images generated from different numbers of annotated vessels. Figures <a href="#f:background_with_artificial_vessels">17</a>(a), <a href="#f:background_with_artificial_vessels">17</a>(b), <a href="#f:background_with_artificial_vessels">17</a>(c) and <a href="#f:background_with_artificial_vessels">17</a>(d) were generated from, respectively, $<code class="language-plaintext highlighter-rouge">m=1</code>$, $<code class="language-plaintext highlighter-rouge">m=5</code>$, $<code class="language-plaintext highlighter-rouge">m=10</code>$ and $<code class="language-plaintext highlighter-rouge">m=160</code>$ vessel annotations. The images show a large diversity of geometries and vessel textures, as well as different degrees of vessel density.</p>

<figure id="f:background_with_artificial_vessels" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Examples of artificial images generated from (a) <span class="math inline"><em>m</em> = 1</span>, (b) <span class="math inline"><em>m</em> = 5</span>, (c) <span class="math inline"><em>m</em> = 10</span>, and (d) <span class="math inline"><em>m</em> = 160</span> vessel texture maps.</figcaption>
</figure>

<p>It is possible to use additional data augmentation transforms to further diversify the images. For instance, the images can have the size, brightness, and contrast randomly changed. Gaussian noise can also be added to the images (an example is shown in Figure <a href="#f:img_noise_gauss">18</a>). Since there are many distinct approaches for data augmentation, our method is defined independently of any specific data augmentation pipeline.</p>

<figure id="f:img_noise_gauss" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Example of Gaussian noise insertion in an artificial image. (a) Original image. (b) Image after noise inclusion.</figcaption>
</figure>

<h2 id="validation-using-neural-networks">Validation using neural networks</h2>

<p>The artificial images were used to verify if the proposed methodology can assist in training neural networks. The neural network used is based on the U-net architecture (<a href="#ref-ronneberger2015u">Ronneberger et al. 2015</a>) using residual blocks. Figure <a href="#f:resunet">19</a> illustrates the architecture. The network was trained using a learning rate of 0.01 with a polynomial learning rate scheduler with an exponent of 0.9 and a batch size of 8. The performance was quantified using the Dice and centerlineDice (clDice) (<a href="#ref-paetzold2019cldice">Paetzold et al. 2019</a>) metrics.</p>

<figure id="f:resunet" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Neural network architecture used.</figcaption>
</figure>

<p>The first experiment concerns the CORTEX dataset. The dataset was randomly split into 40 training images and 10 validation images. A set of vessel texture maps, $<code class="language-plaintext highlighter-rouge">\mathcal{M}</code>$, was extracted from the 40 training images. A respective set $<code class="language-plaintext highlighter-rouge">\mathcal{I}</code>$ of 100 artificial images was generated using a fixed subset of $<code class="language-plaintext highlighter-rouge">m</code>$ texture maps from $<code class="language-plaintext highlighter-rouge">\mathcal{M}</code>$. To make sure that the results are not due to the specific maps used, $<code class="language-plaintext highlighter-rouge">n_d</code>$ different sets were generated. The specific procedure used to generate the artificial datasets is described in Algorithm <a href="#a:packs">20</a>. The results presented in this section are always averaged over the $<code class="language-plaintext highlighter-rouge">n_d</code>$ datasets.</p>

<p>We considered cases where $<code class="language-plaintext highlighter-rouge">m=1</code>$, $<code class="language-plaintext highlighter-rouge">m=5</code>$, $<code class="language-plaintext highlighter-rouge">m=10</code>$, and $<code class="language-plaintext highlighter-rouge">m=160</code>$ vessels were annotated. For $<code class="language-plaintext highlighter-rouge">m=1</code>$, $<code class="language-plaintext highlighter-rouge">m=5</code>$ and $<code class="language-plaintext highlighter-rouge">m=10</code>$, $<code class="language-plaintext highlighter-rouge">n_d=10</code>$ datasets were generated. Only one dataset of 100 images was generated for $<code class="language-plaintext highlighter-rouge">m=160</code>$ maps since this set already has a large number of maps and random fluctuations due to the specific maps used are not expected.</p>

<figure id="a:packs" data-latex-placement="!h">
<div class="algorithm">

</div>
<figcaption>Data generation for the neural network experiments</figcaption>
</figure>

<p>For comparison, a baseline model was trained on the 40 original training images using all available vessels. This model represents the best result that can be obtained with the training parameters considered since all pixels are annotated and used for training. As an additional comparison, the network was also trained on 100 randomly selected images generated by the TREE method, and the training was repeated 10 times on different sets of randomly selected images to asses the performance variability when using different images. This dataset is used as a baseline comparison with artificial images containing realistic vessel geometries without real textures.</p>

<p>In all experiments the networks were trained for 300 epochs. The performance of all trained models was measured on the validation set consisting of 10 real images. The models with the lowest validation loss found during training were used. The only data augmentation used was the inclusion of Gaussian noise and the darkening of the image according to the distance from the center of the sample to simulate microscope illumination.</p>

<p>The results are shown in Table <a href="#t:result_table1_cortex">2</a>. In the table, average and standard deviation values among the 10 sets of 100 images are shown for $<code class="language-plaintext highlighter-rouge">m=1</code>$, $<code class="language-plaintext highlighter-rouge">m=5</code>$, and $<code class="language-plaintext highlighter-rouge">m=10</code>$ annotated maps. No statistics were calculated for the 160 maps and baseline images because they have a single set of images. The results show that the performance difference between 5 and 160 maps is small. Thus, 5 maps seem to be enough to reach the best accuracy for this dataset when using artificial images. Interestingly, while we observe a 0.05 difference in Dice score between the artificial images using 5 maps and the baseline, the clDice difference is only around 0.03. Thus, the centerlines of the vessels are being segmented with an accuracy that is very close to the baseline. Training on the TREE images results in a Dice score of 0.79. Thus, our method achieves a 10.1% Dice score improvement over the usual pre-training strategy using artificial tree generation.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: left">Experiment</th>
      <th style="text-align: left">Dice</th>
      <th style="text-align: left">clDice</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: left">Baseline</td>
      <td style="text-align: left">0.92</td>
      <td style="text-align: left">0.94</td>
    </tr>
    <tr>
      <td style="text-align: left">TREE</td>
      <td style="text-align: left">0.79$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02</td>
      <td style="text-align: left">0.85$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.04</td>
    </tr>
    <tr>
      <td style="text-align: left">Using 1 map</td>
      <td style="text-align: left">0.85$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.03</td>
      <td style="text-align: left">0.89$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.05</td>
    </tr>
    <tr>
      <td style="text-align: left">Using 5 maps</td>
      <td style="text-align: left">0.87$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02</td>
      <td style="text-align: left">0.91$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02</td>
    </tr>
    <tr>
      <td style="text-align: left">Using 10 maps</td>
      <td style="text-align: left">0.88$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.01</td>
      <td style="text-align: left">0.91$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.01</td>
    </tr>
    <tr>
      <td style="text-align: left">Using 160 maps</td>
      <td style="text-align: left">0.88</td>
      <td style="text-align: left">0.91</td>
    </tr>
  </tbody>
</table>

<p>Average and standard deviation of the Dice and clDice metrics obtained for neural networks trained on artificial vessel images and evaluated on the CORTEX dataset. {#t:result_table1_cortex}</p>

<p>Example segmentations of a network trained with artificial images generated from 1 annotation are shown in Figure <a href="#f:predicion_1_map_pack3">21</a>. The images indicate the reason for the difference observed between the Dice and clDice metrics. The network trained on the artificial images tends to generate segmented vessels with the same caliber. Thus, while the centerline of the vessels is correctly identified, the caliber is not always correct. Adding more annotations with high-caliber vessels may mitigate this problem.</p>

<figure id="f:predicion_1_map_pack3" data-latex-placement="!h">
[Image omitted for text-only version]
<figcaption>Example segmentation of a network trained on artificial images. Three images of the validation set (real images) are shown in (a), (b), and (c). The corresponding ground truth annotations are shown in (d), (e), and (f). The results of the network are shown in (g), (h), and (i).</figcaption>
</figure>

<p>To verify if the method is general enough to be applied to different datasets, the experiments done for the CORTEX dataset were repeated on the DRIVE dataset. The artificial images were created using exactly the same procedure used for the CORTEX dataset. In short, a set of vessel texture maps was extracted from the 20 training images of the original train/test split of the DRIVE dataset. Algorithm <a href="#a:packs">20</a> was then applied to create artificial images using $<code class="language-plaintext highlighter-rouge">m=1</code>$, $<code class="language-plaintext highlighter-rouge">m=5</code>$, $<code class="language-plaintext highlighter-rouge">m=10</code>$, and $<code class="language-plaintext highlighter-rouge">m=160</code>$ maps. $<code class="language-plaintext highlighter-rouge">n_d=10</code>$ sets of 100 images were created for the $<code class="language-plaintext highlighter-rouge">m=1</code>$, $<code class="language-plaintext highlighter-rouge">m=5</code>$, and $<code class="language-plaintext highlighter-rouge">m=10</code>$ cases, and one set of 100 images was created for $<code class="language-plaintext highlighter-rouge">m=160</code>$. A baseline model was trained on the 20 training images of the dataset for comparison. An additional model was trained 10 times on different sets of 100 randomly selected images generated by the TREE method. The performance of all trained models was evaluated on the original test split of the dataset.</p>

<p>There were two changes in network training compared to the CORTEX dataset. The networks were trained for 1000 epochs, which was necessary for convergence. A lightweight data augmentation consisting of random flipping, random rotation, and random resized crops was necessary to avoid overfitting<sup id="fnref:3" role="doc-noteref"><a href="#fn:3" class="footnote" rel="footnote">3</a></sup>.</p>

<p>The results of the experiments are shown in Table <a href="#t:result_table1_drive">3</a>. For the DRIVE dataset, 10 maps resulted in a Dice score of 0.74, which is close to the baseline score of 0.81. The TREE images led to poor results since the method used to generate the images was originally developed for microscopy images. In contrast, our method can naturally adapt to different imaging modalities.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: left">Experiment</th>
      <th style="text-align: left">Dice</th>
      <th style="text-align: left">clDice</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: left">Baseline</td>
      <td style="text-align: left">0.81</td>
      <td style="text-align: left">0.80</td>
    </tr>
    <tr>
      <td style="text-align: left">TREE</td>
      <td style="text-align: left">0.21$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.01</td>
      <td style="text-align: left">0.23$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.06</td>
    </tr>
    <tr>
      <td style="text-align: left">Using 1 map</td>
      <td style="text-align: left">0.68$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.05</td>
      <td style="text-align: left">0.67$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.06</td>
    </tr>
    <tr>
      <td style="text-align: left">Using 5 maps</td>
      <td style="text-align: left">0.68$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.05</td>
      <td style="text-align: left">0.68$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.06</td>
    </tr>
    <tr>
      <td style="text-align: left">Using 10 maps</td>
      <td style="text-align: left">0.74$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02</td>
      <td style="text-align: left">0.73$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02</td>
    </tr>
    <tr>
      <td style="text-align: left">Using 160 maps</td>
      <td style="text-align: left">0.75</td>
      <td style="text-align: left">0.75</td>
    </tr>
  </tbody>
</table>

<p>Average and standard deviation of the Dice and clDice metrics obtained for neural networks trained on artificial vessel images and evaluated on the DRIVE dataset. {#t:result_table1_drive}</p>

<p>The amount of manual annotation required by our methodology was measured for the CORTEX and DRIVE datasets. For each map used in the experiments, the length of the vessel represented by the map was measured. This is given by the length of the curve represented by the set of medial axis points $<code class="language-plaintext highlighter-rouge">P_m</code>$ used to create the map. For the CORTEX dataset, 5 maps required, on average, annotating a total vessel length of 513 pixels. For comparison, the vasculature of the 40 training images has a total length of 1555520 pixels. Thus, the Dice score of 0.87 is reached using 0.03% of the annotation effort used on the full dataset.</p>

<p>For the DRIVE dataset, the creation of 10 maps required on average annotating a total vessel length of 510 pixels. The number is similar to annotating 5 maps on the CORTEX dataset because the annotations on the DRIVE dataset for each map were usually shorter since vessel segments on the DRIVE dataset tend to have shorter lengths. The 20 training images have a total vessel length of 174080 pixels. Thus, the Dice score of 0.74 is reached using 0.29% of the vessels annotated on the full dataset. Note that the method is used only for pre-training the network. After pre-training, the network can be refined on the real samples.</p>

<h1 id="conclusion">Conclusion</h1>

<p>We presented a methodology for generating artificial blood vessel images with realistic textures. The method is built upon the fact that vessel segments can be used as a reference for a coordinate system, which allows the definition of texture maps. The method is fast, being able to generate hundreds of images from a single vessel segment annotation, and can significantly decrease the manual annotation effort when segmenting novel datasets.</p>

<p>We showed that by annotating only 5 vessel segments of the CORTEX dataset, corresponding to only 0.03% of the vessels, the generated artificial images can be used for training a neural network with a Dice score of 0.87$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02 and a clDice score of 0.91$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02, which are very close to the baseline values of, respectively, 0.92 and 0.94 obtained when annotating the whole dataset. The annotation can be done in under 2 minutes by a trained annotator. For the DRIVE dataset, annotating only around 0.29% of the vessels, or 10 segments, led to a Dice score of 0.74$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02 and a clDice score of 0.73$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02, which are also close to the baseline values of, respectively, 0.81 and 0.8.</p>

<p>The results were compared with those obtained by a common procedure used for pre-training neural networks in recent works (<a href="#ref-tetteh2020deepvesselnet">Tetteh et al. 2020</a>; <a href="#ref-mou2021cs2"><span class="nocase">Mou et al.</span> 2021</a>; <a href="#ref-todorov2020machine"><span class="nocase">Todorov et al.</span> 2020</a>; <a href="#ref-wijethilake2023deep">Wijethilake et al. 2023</a>), which we called the TREE method. For the CORTEX dataset, the TREE method resulted in a Dice score of 0.79$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.02 and a clDice score of 0.85$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.04, which are lower than the values obtained by our method. For the DRIVE dataset, a Dice score of 0.21$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.01 and a clDice score of 0.23$<code class="language-plaintext highlighter-rouge">\pm</code>$<!-- -->0.06 were obtained using the TREE method. The reason for the weak performance is that the method was developed with a focus on microscopy images. The advantage of our method is that it can adapt to different imaging modalities since the appearance of the vessels is extracted directly from small segments of the real images. Thus, the method worked well for both fluorescence microscopy and fundus photography images.</p>

<p>The developed methodology also allows to easily add new annotations to the dataset. For instance, one can annotate a specific blood vessel that was not segmented correctly by the network and generate a new set of artificial images containing blood vessels with the same appearance but different geometries. The network can then be refined on the images.</p>

<p>The analysis was done with lightweight pre-processing and augmentation procedures to avoid biasing the results. That is, it is important to verify that the performance of the method does not come from a complex augmentation pipeline, but from the representation capability of the textures captured from the real images. For future analyses, more elaborate pre-processing steps, such as histogram equalization (<a href="#ref-vijayalakshmi2023strategic">Vijayalakshmi and Nath 2023</a>, <a href="#ref-vijayalakshmi2022novel">2022</a>), and augmentation procedures may be used to improve the results of the method.</p>

<p>The generation of vessel texture maps also opens new possibilities for disentangling the influence of shape and texture on neural network training. It allows identifying the importance of each aspect and to apply data augmentation and style transfer techniques separately for them. This is a promising research direction with some recent interesting results regarding the texture bias of CNNs (<a href="#ref-geirhos2018imagenet">Geirhos et al. 2018</a>).</p>

<h1 id="funding">Funding</h1>

<p>C. H. Comin thanks FAPESP (grant no. 21/12354-8) for financial support. M. V. da Silva thanks FAPESP (grant no. 23/03975-4) and the Google PhD Fellowship Program for financial support.</p>

<h1 id="credit-author-statement">CRediT author statement</h1>

<p><strong>Adriano dos Reis Carvalho</strong>: Methodology, Software, Validation, Investigation, Visualization, Data Curation, Writing - Original Draft. <strong>Matheus Viana da Silva</strong>: Software, Methodology, Writing – review and editing. <strong>Cesar H. Comin</strong>: Conceptualization, Investigation, Methodology, Software, Supervision, Project Administration, Writing - Original Draft, Writing – review and editing.</p>

<div id="refs" class="references csl-bib-body hanging-indent">

<div id="ref-almotiri2018multi" class="csl-entry">

Almotiri, Jasem, Khaled Elleithy, and Abdelrahman Elleithy. 2018. “A Multi-Anatomical Retinal Structure Segmentation System for Automatic Eye Screening Using Morphological Adaptive Fuzzy Thresholding.” *IEEE Journal of Translational Engineering in Health and Medicine* 6: 1–23.

</div>

<div id="ref-chen2023all" class="csl-entry">

Chen, Cheng, Kangneng Zhou, Zhiliang Wang, Qian Zhang, and Ruoxiu Xiao. 2023. “All Answers Are in the Images: A Review of Deep Learning for Cerebrovascular Segmentation.” *Computerized Medical Imaging and Graphics*, 102229.

</div>

<div id="ref-dolati2015pre" class="csl-entry">

Dolati, Parviz, Alexandra Golby, Daniel Eichberg, et al. 2015. “Pre-Operative Image-Based Segmentation of the Cranial Nerves and Blood Vessels in Microvascular Decompression: Can We Prevent Unnecessary Explorations?” *Clinical Neurology and Neurosurgery* 139: 159–65.

</div>

<div id="ref-eladawi2018early" class="csl-entry">

Eladawi, Nabila, Mohammed Elmogy, Fahmi Khalifa, et al. 2018. “Early Diabetic Retinopathy Diagnosis Based on Local Retinal Blood Vessel Analysis in Optical Coherence Tomography Angiography (OCTA) Images.” *Medical Physics* 45 (10): 4582–99.

</div>

<div id="ref-freitas2022unbiased" class="csl-entry">

Freitas-Andrade, Moises, Cesar H Comin, Matheus Viana da Silva, Luciano da F Costa, and Baptiste Lacoste. 2022. “Unbiased Analysis of Mouse Brain Endothelial Networks from Two-or Three-Dimensional Fluorescence Images.” *Neurophotonics* 9 (3): 031916.

</div>

<div id="ref-galarreta2013three" class="csl-entry">

Galarreta-Valverde, Miguel A, Maysa MG Macedo, Choukri Mekkaoui, and Marcel P Jackowski. 2013. “Three-Dimensional Synthetic Blood Vessel Generation Using Stochastic l-Systems.” *Medical Imaging 2013: Image Processing* 8669: 86691I.

</div>

<div id="ref-geirhos2018imagenet" class="csl-entry">

Geirhos, Robert, Patricia Rubisch, Claudio Michaelis, Matthias Bethge, Felix A Wichmann, and Wieland Brendel. 2018. “ImageNet-Trained CNNs Are Biased Towards Texture; Increasing Shape Bias Improves Accuracy and Robustness.” *arXiv Preprint arXiv:1811.12231*.

</div>

<div id="ref-hughes2013computer" class="csl-entry">

Hughes, John F, Andries van Dam, Morgan McGuire, et al. 2013. *Computer Graphics: Principles and Practice*. Addison-Wesley Professional.

</div>

<div id="ref-islam2021shape" class="csl-entry">

Islam, Md Amirul, Matthew Kowal, Patrick Esser, et al. 2021. “Shape or Texture: Understanding Discriminative Features in Cnns.” *arXiv Preprint arXiv:2101.11604*.

</div>

<div id="ref-kocinski20123d" class="csl-entry">

Kociński, Marek, Artur Klepaczko, Andrzej Materka, Martha Chekenya, and Arvid Lundervold. 2012. “3D Image Texture Analysis of Simulated and Real-World Vascular Trees.” *Computer Methods and Programs in Biomedicine* 107 (2): 140–54.

</div>

<div id="ref-li2021blood" class="csl-entry">

Li, Zhenwei, Mengli Jia, Xiaoli Yang, and Mengying Xu. 2021. “Blood Vessel Segmentation of Retinal Image Based on Dense-u-Net Network.” *Micromachines* 12 (12): 1478.

</div>

<div id="ref-lindenmayer1968mathematical" class="csl-entry">

Lindenmayer, Aristid. 1968. “Mathematical Models for Cellular Interactions in Development i. Filaments with One-Sided Inputs.” *Journal of Theoretical Biology* 18 (3): 280–99.

</div>

<div id="ref-ma2019neural" class="csl-entry">

Ma, Chunwei, Zhanghexuan Ji, and Mingchen Gao. 2019. “Neural Style Transfer Improves 3D Cardiovascular MR Image Segmentation on Inconsistent Data.” *Medical Image Computing and Computer Assisted Intervention–MICCAI 2019: 22nd International Conference, Shenzhen, China, October 13–17, 2019, Proceedings, Part II 22*, 128–36.

</div>

<div id="ref-mookiah2021review" class="csl-entry">

Mookiah, Muthu Rama Krishnan, Stephen Hogg, Tom J MacGillivray, et al. 2021. “A Review of Machine Learning Methods for Retinal Blood Vessel Segmentation and Artery/Vein Classification.” *Medical Image Analysis* 68: 101905.

</div>

<div id="ref-mou2021cs2" class="csl-entry">

<span class="nocase">Mou, Lei, Yitian Zhao, Huazhu Fu, et al.</span> 2021. “CS2-Net: Deep Learning Segmentation of Curvilinear Structures in Medical Imaging.” *Medical Image Analysis* 67: 101874.

</div>

<div id="ref-nair2020blood" class="csl-entry">

Nair, Arun T, and K Muthuvel. 2020. “Blood Vessel Segmentation and Diabetic Retinopathy Recognition: An Intelligent Approach.” *Computer Methods in Biomechanics and Biomedical Engineering: Imaging &amp; Visualization* 8 (2): 169–81.

</div>

<div id="ref-ouellette2020vascular" class="csl-entry">

<span class="nocase">Ouellette, Julie, Xavier Toussay, Cesar H Comin, et al.</span> 2020. “Vascular Contributions to 16p11. 2 Deletion Autism Syndrome Modeled in Mice.” *Nature Neuroscience* 23 (9): 1090–101.

</div>

<div id="ref-paetzold2019cldice" class="csl-entry">

Paetzold, Johannes C, Suprosanna Shit, Ivan Ezhov, et al. 2019. “clDice—a Novel Connectivity-Preserving Loss Function for Vessel Segmentation.” *Medical Imaging Meets NeurIPS 2019 Workshop*.

</div>

<div id="ref-popescu2021retinal" class="csl-entry">

Popescu, Dan, Mihaela Deaconu, Loretta Ichim, and Grigore Stamatescu. 2021. “Retinal Blood Vessel Segmentation Using Pix2pix Gan.” *2021 29th Mediterranean Conference on Control and Automation (MED)*, 1173–78.

</div>

<div id="ref-roda2021blood" class="csl-entry">

Roda, Niccolò, Giada Blandano, and Pier Giuseppe Pelicci. 2021. “Blood Vessels and Peripheral Nerves as Key Players in Cancer Progression and Therapy Resistance.” *Cancers* 13 (17): 4471.

</div>

<div id="ref-ronneberger2015u" class="csl-entry">

Ronneberger, Olaf, Philipp Fischer, and Thomas Brox. 2015. “U-Net: Convolutional Networks for Biomedical Image Segmentation.” *Medical Image Computing and Computer-Assisted Intervention–MICCAI 2015: 18th International Conference, Munich, Germany, October 5-9, 2015, Proceedings, Part III 18*, 234–41.

</div>

<div id="ref-sangeethaa2018intelligent" class="csl-entry">

Sangeethaa, SN, and P Uma Maheswari. 2018. “An Intelligent Model for Blood Vessel Segmentation in Diagnosing DR Using CNN.” *Journal of Medical Systems* 42 (10): 175.

</div>

<div id="ref-schneider2012tissue" class="csl-entry">

Schneider, Matthias, Johannes Reichold, Bruno Weber, Gábor Székely, and Sven Hirsch. 2012. “Tissue Metabolism Driven Arterial Tree Generation.” *Medical Image Analysis* 16 (7): 1397–414.

</div>

<div id="ref-StaalDRIVE" class="csl-entry">

Staal, J., M. D. Abramoff, M. Niemeijer, M. A. Viergever, and B. van Ginneken. 2004. “Ridge-Based Vessel Segmentation in Color Images of the Retina.” *IEEE Transactions on Medical Imaging* 23 (4): 501–9. <a href="https://doi.org/10.1109/TMI.2004.825627">https://doi.org/10.1109/TMI.2004.825627</a>.

</div>

<div id="ref-sule2020effects" class="csl-entry">

Sule, Olubunmi Omobola, Serestina Viriri, and Abdultaofeek Abayomi. 2020. “Effects of Image Enhancement Techniques on CNNs Based Algorithms for Segmentation of Blood Vessels: A Review.” *2020 International Conference on Artificial Intelligence, Big Data, Computing and Data Communication Systems (icABCD)*, 1–6.

</div>

<div id="ref-tagliasacchi20163d" class="csl-entry">

Tagliasacchi, Andrea, Thomas Delame, Michela Spagnuolo, Nina Amenta, and Alexandru Telea. 2016. “3d Skeletons: A State-of-the-Art Report.” *Computer Graphics Forum* 35: 573–97.

</div>

<div id="ref-tetteh2020deepvesselnet" class="csl-entry">

Tetteh, Giles, Velizar Efremov, Nils D Forkert, et al. 2020. “Deepvesselnet: Vessel Segmentation, Centerline Prediction, and Bifurcation Detection in 3-d Angiographic Volumes.” *Frontiers in Neuroscience* 14: 592352.

</div>

<div id="ref-tmenova2019cyclegan" class="csl-entry">

Tmenova, Oleksandra, Rémi Martin, and Luc Duong. 2019. “CycleGAN for Style Transfer in x-Ray Angiography.” *International Journal of Computer Assisted Radiology and Surgery* 14: 1785–94.

</div>

<div id="ref-todorov2020machine" class="csl-entry">

<span class="nocase">Todorov, Mihail Ivilinov, Johannes Christian Paetzold, Oliver Schoppe, et al.</span> 2020. “Machine Learning Analysis of Whole Mouse Brain Vasculature.” *Nature Methods* 17 (4): 442–49.

</div>

<div id="ref-vijayalakshmi2022novel" class="csl-entry">

Vijayalakshmi, Dhurairajan, and Malaya Kumar Nath. 2022. “A Novel Multilevel Framework Based Contrast Enhancement for Uniform and Non-Uniform Background Images Using a Suitable Histogram Equalization.” *Digital Signal Processing* 127: 103532.

</div>

<div id="ref-vijayalakshmi2023strategic" class="csl-entry">

Vijayalakshmi, Dhurairajan, and Malaya Kumar Nath. 2023. “A Strategic Approach Towards Contrast Enhancement by Two-Dimensional Histogram Equalization Based on Total Variational Decomposition.” *Multimedia Tools and Applications* 82 (13): 19247–74.

</div>

<div id="ref-wijethilake2023deep" class="csl-entry">

Wijethilake, Navodini, Mithunjha Anandakumar, Cheng Zheng, Peter TC So, Murat Yildirim, and Dushan N Wadduwage. 2023. “DEEP-Squared: Deep Learning Powered de-Scattering with Excitation Patterning.” *Light: Science &amp; Applications* 12 (1): 228.

</div>

<div id="ref-wong2019blood" class="csl-entry">

Wong, Sau May, Jacobus FA Jansen, C Eleana Zhang, et al. 2019. “Blood-Brain Barrier Impairment and Hypoperfusion Are Linked in Cerebral Small Vessel Disease.” *Neurology* 92 (15): e1669–77.

</div>

<div id="ref-wu2022vessel" class="csl-entry">

Wu, Chulin, Heye Zhang, Jiaqi Chen, et al. 2022. “Vessel-GAN: Angiographic Reconstructions from Myocardial CT Perfusion with Explainable Generative Adversarial Networks.” *Future Generation Computer Systems* 130: 128–39.

</div>

<div id="ref-zhao2018synthesizing" class="csl-entry">

Zhao, He, Huiqi Li, Sebastian Maurer-Stroh, and Li Cheng. 2018. “Synthesizing Retinal and Neuronal Images with Generative Adversarial Nets.” *Medical Image Analysis* 49: 14–26.

</div>

</div>

<div class="footnotes" role="doc-endnotes">
  <ol>
    <li id="fn:1" role="doc-endnote">
      <p><a href="https://github.com/AdrianoCarvalh0/texture_codes.git">https://github.com/AdrianoCarvalh0/texture_codes.git</a> <a href="#fnref:1" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:2" role="doc-endnote">
      <p>Regarding the mathematical notation used in the text, vectors and points are represented in bold. Sets of vectors and points are represented by uppercase letters. Matrices are represented by uppercase letters and sets of matrices are represented by letters using a calligraphic font. <a href="#fnref:2" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:3" role="doc-endnote">
      <p>The transformation RandomAffine(angle=45, scale=(0.95, 1.20)) from the <em>torchvision</em> Python package was used for the rotation and random resized crop. <a href="#fnref:3" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
  </ol>
</div>]]></content><author><name>Adriano dos Reis Carvalho</name></author><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Astroglial Hmgb1 regulates postnatal astrocyte morphogenesis and cerebrovascular maturation</title><link href="https://chcomin.github.io/publications/articles/2023-freitas-andrade2023astroglial/" rel="alternate" type="text/html" title="Astroglial Hmgb1 regulates postnatal astrocyte morphogenesis and cerebrovascular maturation" /><published>2023-08-16T00:00:00+00:00</published><updated>2023-08-16T00:00:00+00:00</updated><id>https://chcomin.github.io/publications/articles/2023-Freitas-Andrade2023Astroglial</id><content type="html" xml:base="https://chcomin.github.io/publications/articles/2023-freitas-andrade2023astroglial/"><![CDATA[]]></content><author><name>Moises Freitas-Andrade</name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Estimating the effects of urban green regions in terms of diffusion</title><link href="https://chcomin.github.io/publications/articles/2023-tokuda2023estimating/" rel="alternate" type="text/html" title="Estimating the effects of urban green regions in terms of diffusion" /><published>2023-05-01T00:00:00+00:00</published><updated>2023-05-01T00:00:00+00:00</updated><id>https://chcomin.github.io/publications/articles/2023-Tokuda2023Estimating</id><content type="html" xml:base="https://chcomin.github.io/publications/articles/2023-tokuda2023estimating/"><![CDATA[]]></content><author><name>Eric K Tokuda</name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">On the stability of citation networks</title><link href="https://chcomin.github.io/publications/articles/2023-benatti2023on/" rel="alternate" type="text/html" title="On the stability of citation networks" /><published>2023-01-01T00:00:00+00:00</published><updated>2023-01-01T00:00:00+00:00</updated><id>https://chcomin.github.io/publications/articles/2023-Benatti2023On</id><content type="html" xml:base="https://chcomin.github.io/publications/articles/2023-benatti2023on/"><![CDATA[]]></content><author><name>Alexandre Benatti</name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Neonatal hyperoxia in mice triggers long-term cognitive deficits via impairments in cerebrovascular function and neurogenesis</title><link href="https://chcomin.github.io/publications/articles/2022-lithopoulos2022neonatal/" rel="alternate" type="text/html" title="Neonatal hyperoxia in mice triggers long-term cognitive deficits via impairments in cerebrovascular function and neurogenesis" /><published>2022-11-15T00:00:00+00:00</published><updated>2022-11-15T00:00:00+00:00</updated><id>https://chcomin.github.io/publications/articles/2022-Lithopoulos2022Neonatal</id><content type="html" xml:base="https://chcomin.github.io/publications/articles/2022-lithopoulos2022neonatal/"><![CDATA[]]></content><author><name>Marissa A. Lithopoulos</name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Impact of the topology of urban streets on mobility optimization</title><link href="https://chcomin.github.io/publications/articles/2022-tokuda2022impact/" rel="alternate" type="text/html" title="Impact of the topology of urban streets on mobility optimization" /><published>2022-10-01T00:00:00+00:00</published><updated>2022-10-01T00:00:00+00:00</updated><id>https://chcomin.github.io/publications/articles/2022-Tokuda2022Impact</id><content type="html" xml:base="https://chcomin.github.io/publications/articles/2022-tokuda2022impact/"><![CDATA[]]></content><author><name>Eric K Tokuda</name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">An Analysis of the Inﬂuence of Transfer Learning When Measuring the Tortuosity of Blood Vessels</title><link href="https://chcomin.github.io/publications/articles/2022-segmentation-biases/" rel="alternate" type="text/html" title="An Analysis of the Inﬂuence of Transfer Learning When Measuring the Tortuosity of Blood Vessels" /><published>2022-07-29T00:00:00+00:00</published><updated>2022-07-29T00:00:00+00:00</updated><id>https://chcomin.github.io/publications/articles/2022-segmentation-biases</id><content type="html" xml:base="https://chcomin.github.io/publications/articles/2022-segmentation-biases/"><![CDATA[<h1 id="introduction">Introduction</h1>

<p>Blood vessels take part in many physiological processes in humans and animals and can be found almost anywhere in an organism. Therefore, many ailments and developmental disorders may be caused by abnormal blood vessels (<a href="#ref-Potente2011">Potente et al. 2011</a>). Thus, characterizing blood vessels is an important matter not only for diagnosis but also to help answer important research questions regarding angiogenesis (<a href="#ref-Guzel2020">Guzel et al. 2020</a>; <a href="#ref-Fernandez-Klett2020">Fernandez-Klett et al. 2020</a>), blood vessel related ailments (<a href="#ref-Canton2021">Canton et al. 2021</a>) and the blood-brain barrier (<a href="#ref-Fernandez-Klett2020">Fernandez-Klett et al. 2020</a>; <a href="#ref-FriasAnaya2021">Frías-Anaya et al. 2021</a>). Common metrics for characterizing blood vessels are density and tortuosity since they have been shown to influence neuronal activation (<a href="#ref-Lacoste2014">Lacoste et al. 2014</a>) and blood flow (<a href="#ref-Han2012">Han 2012</a>). Acquiring precise values for those metrics usually requires annotating blood vessels in images, which is time-consuming and error-prone. Consequently, many image processing techniques have been developed for automatically characterizing blood vessels (<a href="#ref-Ma2019">Ma et al. 2019</a>; <a href="#ref-Tongpob2019">Tongpob et al. 2019</a>). Usually, the most challenging step of the developed techniques lies in segmenting the blood vessels (<a href="#ref-Lesage2009">Lesage et al. 2009</a>).</p>

<p>More recently, owing to the recent advancements of Deep Learning methods on many computer vision tasks (<a href="#ref-Goodfellow2016">Goodfellow et al. 2016</a>), Convolutional Neural Networks (CNN) have been applied with great success for segmenting blood vessels. Among the most common types of images where CNNs have been applied for blood vessel analysis are retina fundus and magnetic resonance images (<a href="#ref-Li2021">Li et al. 2021</a>; <a href="#ref-Moccia2018">Moccia et al. 2018</a>). Recent works have also explored the use of CNNs for blood vessel microscopy images (<a href="#ref-Tetteh2020">Tetteh et al. 2020</a>; <a href="#ref-Kirst2020">Kirst et al. 2020</a>; <a href="#ref-Todorov2020">Todorov et al. 2020</a>). Many CNN architectures have been defined for blood vessel segmentation, U-Net-based architectures (<a href="#ref-Li2021">Li et al. 2021</a>) being the most common. Given that annotating blood vessel images, which can contain thousands of blood vessel segments, is a demanding task, most approaches for training CNNs involve transfer learning methods (<a href="#ref-Tetteh2020">Tetteh et al. 2020</a>; <a href="#ref-Kirst2020">Kirst et al. 2020</a>; <a href="#ref-Todorov2020">Todorov et al. 2020</a>). This is especially true for 3D images, since tracing blood vessels in volumetric images is a particularly difficult task. Most commonly, transfer learning consists in obtaining some off-the-shelf network, that may or may not have been trained on blood vessel images, and fine-tuning the network for segmenting blood vessels for the type of image under study.</p>

<p>In this work, we investigate a possible pitfall when using transfer learning for blood vessel segmentation. The following situation, illustrated in Figure <a href="#f:fig_intro">1</a>, is considered. Suppose that a CNN was trained based on a set of images that were obtained and manually annotated from some clinical trial or biological experiment. Most likely, the objective of the training was to maximize some segmentation performance metric such as the Intersection over Union (IoU) or the Dice coefficient. The trained network was then made available on some repository or software. Then, a new set of images obtained under distinct experimental conditions was acquired during some other experiment. Notice that the experiment might even be carried out by a different group of researchers. Suppose that the overall objective of this new experiment is to study the tortuosity of the blood vessels. For this task, the off-the-shelf network trained using the data from the previous experiment is applied for segmenting the blood vessels, followed by a calculation of the tortuosity.</p>

<figure id="f:fig_intro">
[Image omitted for text-only version]
<figcaption>Illustration of a transfer learning approach commonly used for training CNNs for image segmentation. A CNN is trained on a dataset and made available to other researchers. The off-the-shelf CNN is then used as is, or fine-tuned on another dataset and included in a pipeline for blood vessel morphometry.</figcaption>
</figure>

<p>The above situation has two important possible drawbacks that need to be taken into account. First, the objective of the original experiment where the network was initially trained was solely the segmentation of the blood vessels, there is no guarantee that the values obtained for the tortuosity are correct. Second, the data used in the two situations might have distinct characteristics. Here we do not focus on possible changes on the image characteristics, such as brightness or contrast, or the type of blood vessel under study, but on more subtle differences that might affect the blood vessels. Specifically, we consider two sets of images that have similar statistics but contain blood vessels having distinct degrees of tortuosity. The idea being that a CNN trained on blood vessels having low tortuosity, when used for segmenting highly-tortuous blood vessels, might lead to an overestimation or underestimation of the tortuosity values. The same situation is studied for the opposite problem, that is, CNNs trained on highly-tortuous blood vessels being used for segmenting blood vessels with low tortuosity.</p>

<p>It is important to point out that the possible drawback of transfer learning considered in this work happens mainly on segmentation tasks. For instance, for classification tasks, labeling the data is usually the end goal of digital image processing and computer vision methodologies. Contrariwise, for many analyses in biology and medicine involving digital images, the segmentation of the samples in a dataset tends to be the first step of an overall procedure aimed at characterizing the objects in the images (e.g., cells, organs and blood vessels). Thus, the results of the segmentation are used in downstream tasks involving, for instance, measuring different properties regarding the shape of the objects in the images. In the case of blood vessels, the tortuosity is a commonly analyzed property.</p>

<p>The problem considered in this study is particularly relevant for current researches involving blood vessels, where the impact of an experimental condition might lead to subtle changes in the morphology of the blood vessels, which need to be quantified using robust and systematic approaches. We specifically focus on the tortuosity in this study because it is a difficult metric to be measured and compared by visual inspection, and thus requires particularly reliable means for automatic quantification.</p>

<p>Two main investigations are considered. The first is to assess if there are indeed possible biases that may appear on the calculated tortuosity when using off-the-shelf CNNs. Provided this is true, we verify to which extent such biases can be avoided by fine-tuning the network on the new dataset. This requires the manual annotation of additional images, and thus we also verify how many images need to be annotated in order to reduce the observed biases. In addition, we also investigate a possible data augmentation technique that can be used when training the networks in order to better generalize them for segmenting blood vessels possessing different degrees of tortuosity. All in all, our analysis involves training a CNN over 7000 times in different experimental conditions.</p>

<p>The analysis is focused on a large dataset of confocal microscopy images, but the results should be general for other types of images having blood vessels with a similar appearance.</p>

<h2 id="literature-review">Literature Review</h2>

<p>Recently, many Deep Learning methodologies have been developed for blood vessel segmentation. Much of the effort has been focused on the segmentation of 2D retinographies. This is likely due to the availability of many annotated public datasets. For instance,  Liskowski and Krawiec (<a href="#ref-Liskowski2016">2016</a>) evaluated six methodologies for retinal vessel segmentation and found that correcting class imbalances tends to be more critical for performance than applying data augmentation techniques. In the last few years, several retinal vessel segmentation analyses involving different adaptations of the U-Net architecture have been published (<a href="#ref-Xiao2018">Xiao et al. 2018</a>; <a href="#ref-Zhang2018">Zhang and Chung 2018</a>; <a href="#ref-Jin2019">Jin et al. 2019</a>; <a href="#ref-Gu2019">Gu et al. 2019</a>).</p>

<p>One disadvantage of public retinography datasets is that they are usually small. For instance, the DRIVE dataset (<a href="#ref-staal2004ridge">Staal et al. 2004</a>), one of the most popular retinography datasets in the literature, contains only 40 images. Thus, several works in the literature use transfer learning for improving the convergence of the networks, which is done by either pre-training with extensive datasets such as the ImageNet <sup id="fnref:1" role="doc-noteref"><a href="#fn:1" class="footnote" rel="footnote">1</a></sup> (<a href="#ref-Jiang2018">Jiang et al. 2018</a>; <a href="#ref-MartinezMurcia2021">Martinez-Murcia et al. 2021</a>; <a href="#ref-Maninis2016">Maninis et al. 2016</a>), or by generating additional synthetic data (<a href="#ref-Zhao2018">Zhao et al. 2018</a>, <a href="#ref-Zhao2019">2019</a>; <a href="#ref-Andreini2019">Andreini et al. 2022</a>).</p>

<p>Besides retinography analysis, there have been some important recent developments regarding the segmentation of blood vessels in the brain, such as the DeepVesselNet pipeline (<a href="#ref-Tetteh2020">Tetteh et al. 2020</a>). This pipeline addresses the issue of collecting and annotating structures in large volumetric data. The authors suggested applying a pre-training step using a database composed of artificially generated blood vessels. This transfer learning approach allowed a faster network convergence while maintaining a high-quality segmentation. Todorov et al. (<a href="#ref-Todorov2020">2020</a>) presented a methodology for analyzing important characteristics of whole mouse brain vasculature. The network architecture used was similar to DeepVesselNet, except for the input layer, which used two-channel images. A transfer learning approach involving artificially generated data was also used. With only 0.02% of the collected mouse brain being annotated, the authors were able to segment the vasculature with high accuracy. Kirst et al. (<a href="#ref-Kirst2020">2020</a>) also defined a methodology for the segmentation of whole mouse brain vasculature using a combination of traditional methods and CNNs. While capillaries could be segmented by image filtering, thicker vessels appeared as hollow tubes. Thus, a CNN trained with synthetic data was used to fill hollow regions.</p>

<p>The majority of the developed methodologies were aimed mainly at improving the segmentation accuracy of blood vessels. Despite the development of additional performance metrics such as clDice (<a href="#ref-shit2021cldice">Shit et al. 2021</a>), the influence of segmentation on downstream tasks, such as blood vessel morphometry, has rarely been addressed.</p>

<h1 id="methods">Methods</h1>

<h2 id="training-and-fine-tuning-off-the-shelf-segmentation-cnns">Training and Fine-Tuning Off-The-Shelf Segmentation CNNs</h2>

<p>As stated above, transfer learning is an important technique for training CNNs. This is particularly true when the size of the dataset is small or it is costly to annotate the images. Figure <a href="#fig:motivation">2</a> illustrates in more detail the common approach for transfer learning depicted in Figure <a href="#f:fig_intro">1</a>. First, a group of researchers interested in segmenting blood vessels obtains a set of training images and manually annotates them to optimize a neural network (Figure <a href="#fig:motivation">2</a>A). After choosing a proper network architecture and optimizing it, a trained neural network is obtained. This neural network is usually evaluated through pixelwise accuracy metrics, such as IoU and Dice. Next, the researchers might make the trained network available on a public source-code repository or an image processing software.</p>

<figure id="fig:motivation">
[Image omitted for text-only version]
<figcaption>Detailed illustration of the transfer learning approach depicted in Figure <a href="#f:fig_intro">1</a>. (A) Images obtained from a specific experimental condition are annotated and used for training a neural network. This network is then made publicly available. The training focus on a segmentation task. (B) The network is used for processing images obtained from another experiment. Additional images are annotated and used for fine-tuning the network with the new data. Morphological properties of the blood vessels identified in the new data are then obtained.</figcaption>
</figure>

<p>The pre-trained network can then be used by other research groups in future studies aimed at measuring the morphology of blood vessels. The network might be used as is, or an additional fine-tuning step can be applied to adjust the network to the new data (Figure <a href="#fig:motivation">2</a>B). For fine-tuning the network, a subset of the new data must be manually annotated. Here, it is interesting to highlight two main points. First, the fine-tuning applied to the pre-trained network requires an amount of manual work proportional to the number of additional annotations used. Second, it is usually not possible to directly optimize the network using the morphological metrics being studied since their calculation is not fully differentiable. Thus, the metric that is optimized is usually the cross-entropy of the class probabilities or the segmentation accuracy, and the morphological metrics are calculated based on the resulting segmentations. As a consequence, there is no guarantee that the original or fine-tuned network will provide segmentations that are unbiased with respect to the desired morphometric analyses.</p>

<p>To investigate the situation described above, we conducted two main analyses: (i) the identification of possible biases when performing the morphometry of a blood vessel dataset using an off-the-shelf network, initially optimized to segment a different dataset; (ii) if biases are identified, to which extent they can be mitigated by fine-tuning the off-the-shelf network to the new dataset. We divided our experiments into two steps. First, we optimized two neural networks, each specialized in segmenting blood vessels with either high or low tortuosity. Next, we measured the reliability of each specialized network when applied to blood vessels having distinct tortuosity than the blood vessels used during training.</p>

<h2 id="quantifying-the-influence-of-transfer-learning-on-blood-vessel-tortuosity">Quantifying the Influence of Transfer Learning on Blood Vessel Tortuosity</h2>

<h3 id="optimizing-a-cnn-for-blood-vessel-segmentation">Optimizing a CNN for Blood Vessel Segmentation</h3>

<p>The first part of our experiment (illustrated in Figure <a href="#fig:motivation">2</a>A) consists in training a CNN capable of segmenting blood vessels with state-of-the-art accuracy. For the sake of generality, we should ideally use methodologies that are well-adopted in the literature. Therefore, our chosen network architecture was the U-Net (<a href="#ref-Ronnenberger2015">Ronneberger et al. 2015</a>), as it is widely used for segmentation tasks based on small datasets and it performs well on blood vessels (<a href="#ref-Zhang2018">Zhang and Chung 2018</a>; <a href="#ref-Jin2019">Jin et al. 2019</a>; <a href="#ref-Livne2019">Livne et al. 2019</a>).</p>

<p>The U-Net is composed of an encoder and a decoder. The encoder maps the input image into feature maps having progressively lower spatial resolutions, while the decoder progressively upsamples the output of the encoder and incorporates feature maps from intermediate stages of the encoder. The idea behind this methodology is to generate pixelwise probabilities for image segmentation while taking into account image features at different spatial resolutions. For our experiments, we use a U-Net with a ResNet-34 encoder (<a href="#ref-He2016">He et al. 2016</a>).</p>

<p>Recall that the objective of our analysis is to investigate possible biases when segmenting blood vessels with high or low tortuosity. Therefore, we optimized two distinct networks. One network is trained on a dataset composed predominantly of blood vessels with high tortuosity, while the other is trained on a dataset where the blood vessels typically have low tortuosity. Section <a href="#sec:dataset">2.5</a> describes the procedure used for generating these two datasets. This initial training step is depicted in Figure <a href="#fig:refinement_methodology">3</a>A for the case of blood vessels with low tortuosity. This training is performed for 30 epochs. 80% of the images containing blood vessels with low tortuosity were used in the training set, 10% in the validation set, and 10% in the test set. The training is carried out using the Adam optimizer (<a href="#ref-Diederik2017">Kingma and Ba 2017</a>), with the cross-entropy as a loss function. The learning rate is scheduled using the 1cycle policy (<a href="#ref-Smith2018">Smith 2018</a>), with a maximum value of 0.0005. The procedure used for training a network on the dataset containing blood vessels with high tortuosity is identical. Provided the training is successful, the resulting networks will be able to segment blood vessels having similar characteristics as those in the respective training sets. Thus, we henceforth refer to those networks as being <em>specialized</em> on blood vessels with high or low tortuosity.</p>

<figure id="fig:refinement_methodology">
[Image omitted for text-only version]
<figcaption>The methodology used for training and fine-tuning the CNNs considered in the analysis. The case where the network is initially trained on vessels with low tortuosity and fine-tuned on vessels with high tortuosity is depicted. The same procedure is used when training on vessels with high tortuosity and fine-tuning on vessels with low tortuosity.</figcaption>
</figure>

<p>As illustrated in Figure <a href="#fig:refinement_methodology">3</a>B, after training, the network is applied to the test set in order to generate a set of segmented images $<code class="language-plaintext highlighter-rouge">S_{sl}</code>$, where $<code class="language-plaintext highlighter-rouge">sl</code>$ stands for <em>specialized in low tortuosity vessels</em>. From $<code class="language-plaintext highlighter-rouge">S_{sl}</code>$, we calculate the average tortuosity value of each image using the methodology described in Section <a href="#sec:tortuosity">2.4</a>. The set of calculated tortuosity values is represented as $<code class="language-plaintext highlighter-rouge">T_{sl}</code>$. For the network specialized on blood vessels with high tortuosity, we represent the obtained segmented images as $<code class="language-plaintext highlighter-rouge">S_{sh}</code>$ and average tortuosity values as $<code class="language-plaintext highlighter-rouge">T_{sh}</code>$, where $<code class="language-plaintext highlighter-rouge">sh</code>$ stands for <em>specialized in high tortuosity vessels</em>.</p>

<h3 id="fine-tuning-an-off-the-shelf-network-for-blood-vessel-morphometry">Fine-Tuning an Off-The-Shelf Network for Blood Vessel Morphometry</h3>

<p>The second part of our analysis consists in implementing the process illustrated in Figure <a href="#fig:motivation">2</a>B. Thus, the networks trained using the procedure described in the previous section are fine-tuned to a new dataset. The approach used for fine-tuning the networks is illustrated in Figure <a href="#fig:refinement_methodology">3</a>C. The figure shows the methodology for the network specialized in low tortuosity blood vessels, but the procedure is identical for the other network. As depicted in the figure, the network is fine-tuned using a subset of the training set containing images of blood vessels with high tortuosity. The fine-tuning is done for 15 epochs. Moreover, we use the same methodology and hyperparameters employed when creating the specialized networks.</p>

<p>The fine-tuned network is then applied to the test data of the dataset containing vessels with high tortuosity (Figure <a href="#fig:refinement_methodology">3</a>D). A new set of segmented images $<code class="language-plaintext highlighter-rouge">S_{fh}</code>$ and average tortuosity values $<code class="language-plaintext highlighter-rouge">T_{fh}</code>$ are generated. The subscript $<code class="language-plaintext highlighter-rouge">fh</code>$ stands for <em>fine-tuned with high tortuosity vessels</em>. As mentioned above, this fine-tuning procedure is also performed for the network specialized in blood vessels with high tortuosity. In this case, we represent the new set of segmented images as $<code class="language-plaintext highlighter-rouge">S_{fl}</code>$ and average tortuosity as $<code class="language-plaintext highlighter-rouge">T_{fl}</code>$, where $<code class="language-plaintext highlighter-rouge">fl</code>$ stands for <em>fine-tuned with low tortuosity vessels</em>.</p>

<h3 id="quantifying-morphometry-biases">Quantifying Morphometry Biases</h3>

<p>The segmented images and average tortuosity values obtained from the specialized and fine-tuned networks can be used to assess the segmentation quality and identify possible biases generated by the training procedures regarding the tortuosity of the blood vessels. We define the segmentation quality as the IoU between the segmentations obtained by the network fine-tuned on a dataset and those obtained by the network specialized on the same dataset. So, for the blood vessels with low tortuosity:</p>

<pre><code class="language-math">\begin{equation}
    IoU_l = \frac{1}{N}\sum_{i=1}^{N} IoU(S_{fl}(i), S_{sl}(i)),
\end{equation}
</code></pre>
<p>where $<code class="language-plaintext highlighter-rouge">S_{fl}(i)</code>$ and $<code class="language-plaintext highlighter-rouge">S_{sl}(i)</code>$ represent, respectively, the i-th image from the sets $<code class="language-plaintext highlighter-rouge">S_{fl}</code>$ and $<code class="language-plaintext highlighter-rouge">S_{sl}</code>$, and $<code class="language-plaintext highlighter-rouge">N</code>$ is the number of images. The term $<code class="language-plaintext highlighter-rouge">IoU(S_{fl}(i), S_{sl}(i))</code>$ in Equation <a href="#eq:IoUs">[eq:IoUs]</a> quantifies the IoU between the segmentations obtained by a network that was initially trained on blood vessels with high tortuosity and then fine-tuned on blood vessels with low tortuosity ($<code class="language-plaintext highlighter-rouge">S_{fl}(i)</code>$), and the segmentations obtained by a network that was specifically trained for segmenting blood vessels with low tortuosity ($<code class="language-plaintext highlighter-rouge">S_{sl}(i)</code>$). Ideally, $<code class="language-plaintext highlighter-rouge">IoU_l</code>$ should be close to 1. Notice that this can happen even if the networks cannot segment the blood vessels with good accuracy.</p>

<p>Equivalently, for blood vessels with high tortuosity:</p>

<pre><code class="language-math">\begin{equation}
     IoU_h = \frac{1}{N}\sum_{i=1}^{N} IoU(S_{fh}(i), S_{sh}(i)).
\end{equation}
</code></pre>

<p>The quality of the tortuosity values obtained by each network can also be measured. For the low tortuosity dataset, we define</p>
<pre><code class="language-math">\begin{equation}

    R_l = \frac{1}{N}\sum_{i=1}^{N}\frac{T_{fl}(i)}{T_{sl}(i)}.
\end{equation}
</code></pre>
<p>The term $<code class="language-plaintext highlighter-rouge">T_{fl}(i)/T_{sl}(i)</code>$ quantifies the average tortuosity obtained using the network that was initially trained on blood vessels with high tortuosity and then fine-tuned on low tortuosity vessels ($<code class="language-plaintext highlighter-rouge">T_{fl}(i)</code>$) with respect to the tortuosity value obtained using the network specialized on low tortuosity blood vessels ($<code class="language-plaintext highlighter-rouge">T_{sl}(i)</code>$).</p>

<p>Similarly, for blood vessels with high tortuosity:</p>
<pre><code class="language-math">\begin{equation}

    R_h = \frac{1}{N}\sum_{i=1}^{N}\frac{T_{fh}(i)}{T_{sh}(i)}.
\end{equation}
</code></pre>
<p>Values $<code class="language-plaintext highlighter-rouge">R_l</code>$ and $<code class="language-plaintext highlighter-rouge">R_h</code>$ quantify the changes in tortuosity obtained when using an off-the-shelf network instead of training a neural network from scratch. It is important to notice that the off-the-shelf network was not trained on completely unrelated data. The high and low tortuosity datasets have similar characteristics, with their main distinction being the tortuosity of the blood vessels contained in the images. Also, given the natural sinuosity of the blood vessels in our images, we observed in our experiments that the values in $<code class="language-plaintext highlighter-rouge">T_{sl}</code>$ and $<code class="language-plaintext highlighter-rouge">T_{sh}</code>$, being averages calculated over the entire images, did not reach values close to zero.</p>

<p>Having defined these quality metrics, we search for biases of segmentation and tortuosity values by calculating the values of relative tortuosity and IoU as we increase the number of annotated images used in the fine-tuning step. The number of images was varied from 0 (no fine-tuning) to 40. Since the annotated images are randomly sampled, the fine-tuning is repeated $<code class="language-plaintext highlighter-rouge">K</code>$ times, and each quality metric is calculated as the average for all repetitions. Since using less annotated images leads to large fluctuations in the results, we define $<code class="language-plaintext highlighter-rouge">K</code>$ as</p>
<pre><code class="language-math">\begin{equation}
    K = max\left(5, \frac{t}{2n}\right),
    
\end{equation}
</code></pre>
<p>where $<code class="language-plaintext highlighter-rouge">t</code>$ is the total size of the training set and $<code class="language-plaintext highlighter-rouge">n</code>$ the number of images used in the refinement. Thus, the smaller the number of images used in the refinement, the larger is the number of repetitions used in the evaluation. The average value of a quality metric $<code class="language-plaintext highlighter-rouge">X</code>$ calculated over $<code class="language-plaintext highlighter-rouge">K</code>$ repetitions is henceforth referred to as $<code class="language-plaintext highlighter-rouge">\bar{X}</code>$.</p>

<p>A summary of the metrics defined above is presented in Table <a href="#tab:metrics">1</a> of the Appendix.</p>

<h2 id="data-augmentation-and-transfer-learning">Data Augmentation and Transfer Learning</h2>

<p>Manually labeling blood vessels is a burdensome task. Thus, in many situations, annotating a large number of blood vessels may be prohibitive. Another difficulty with the fine-tuning approach happens when the off-the-shelf network needs to generalize better toward vessels with high tortuosity. In this regard, high tortuosity vessels are usually disease markers. Therefore, it becomes harder to optimize a network to increase its generalization capability since more effort is needed to develop, image, and label samples containing vessels with high tortuosity. Thus, it is beneficial to develop approaches for increasing the generalizability of a network using <em>as few manual labelings as possible</em>.</p>

<p>Training CNNs usually requires large amounts of labeled data. This problem motivated the development of several data augmentation techniques over the years. Data augmentation techniques allow a network to learn patterns that are not present in the original data and, consequently, improve its generalizability. We propose a methodology for increasing the generalization capability of a network specialized in segmenting blood vessels with low tortuosity. This is done by applying data augmentation to the set of low tortuosity vessels using elastic transformations (<a href="#ref-Simard2003">Simard et al. 2003</a>), a type of transformation capable of distorting the blood vessels and giving them a more tortuous appearance.</p>

<p>The elastic transformation deforms an image by drawing random displacement fields. Thus, for each image, horizontal ($<code class="language-plaintext highlighter-rouge">\Delta_x</code>$) and vertical ($<code class="language-plaintext highlighter-rouge">\Delta_y</code>$) displacement fields are defined by drawing random numbers between -1 and +1, generated from a uniform distribution. Then, the fields $<code class="language-plaintext highlighter-rouge">\Delta_x</code>$ and $<code class="language-plaintext highlighter-rouge">\Delta_y</code>$ are convolved with a gaussian with standard deviation $<code class="language-plaintext highlighter-rouge">\sigma</code>$. In this case, $<code class="language-plaintext highlighter-rouge">\sigma</code>$ works as an elasticity coefficient. When $<code class="language-plaintext highlighter-rouge">\sigma \approx 0</code>$, the result is an uncorrelated displacement field. For non-zero $<code class="language-plaintext highlighter-rouge">\sigma</code>$, an elastic deformation effect is obtained. Lastly, the displacement fields $<code class="language-plaintext highlighter-rouge">\Delta_x</code>$ and $<code class="language-plaintext highlighter-rouge">\Delta_y</code>$ are multiplied by a scale factor $<code class="language-plaintext highlighter-rouge">\alpha</code>$, which controls the transformation intensity. The elastic transformation can generate realistic-looking highly-tortuous vessels based on images containing vessels with low tortuosity. An example of the application of elastic transformations in our dataset is depicted in Figure <a href="#fig:ex_elastic_transformation">[fig:ex_elastic_transformation]</a> of the Supplementary Material. Also, Figure <a href="#fig:tort_over_et">[fig:tort_over_et]</a> of the Supplementary Material shows typical tortuosity values obtained for different values of parameter $<code class="language-plaintext highlighter-rouge">\alpha</code>$.</p>

<p>It is important to notice that data augmentation can be applied in two distinct situations. The first involves applying data augmentation when training the network from scratch. The second situation concerns applying data augmentation for fine-tuning a pre-trained network.</p>

<h3 id="data-augmentation-when-training-from-scratch">Data Augmentation When Training From Scratch</h3>

<p>To evaluate the influence of data augmentation when training a network from scratch, we define a new set of images based on the application of the elastic transformation to the set of vessels with low tortuosity, which we henceforth refer to as <em>false highly-tortuous vessels</em>. Next, we optimize a neural network using the false highly-tortuous vessels and assess the capability of this network in performing the morphometry of the real set of high tortuosity vessels. The training methodology employed is the same as the one used in the optimization of the specialized networks (see Section <a href="#sec:creating_specialized">2.2.1</a>), including the architecture, hyperparameters, and the number of epochs. After training, the set of blood vessels with high tortuosity is segmented and the set of tortuosity values $<code class="language-plaintext highlighter-rouge">T_{sf}</code>$ is calculated. In this case, $<code class="language-plaintext highlighter-rouge">sf</code>$ stands for <em>specialized in false highly-tortuous vessels</em>. Similarly to Equations <a href="#eq:R_hort_s">[eq:R_hort_s]</a> and <a href="#eq:R_hort_t">[eq:R_hort_t]</a>, the relative tortuosity in this experiment ($<code class="language-plaintext highlighter-rouge">R_{sf}</code>$) is calculated as the average ratio between each element of $<code class="language-plaintext highlighter-rouge">T_{sf}</code>$ and the respective element of $<code class="language-plaintext highlighter-rouge">T_{sh}</code>$ obtained by the network specialized in high tortuosity vessels (NSHV), that is,</p>

<pre><code class="language-math">\begin{equation}
    R_{sf} = \frac{1}{N}\sum_{i=1}^{N}\frac{T_{sf}(i)}{T_{sh}(i)}.
\end{equation}
</code></pre>
<p>Similarly, the relative IoU, $<code class="language-plaintext highlighter-rouge">IoU_{sf}</code>$, is calculated as</p>

<pre><code class="language-math">\begin{equation}
    IoU_{sf} = \frac{1}{N} \sum_{i=1}^N IoU(S_{sf}(i), S_{sh}(i)).
\end{equation}
</code></pre>

<h3 id="data-augmentation-during-fine-tuning">Data Augmentation During Fine-Tuning</h3>

<p>As mentioned above, data augmentation may also be used when fine-tuning a CNN. Thus, it is interesting to verify if the generalizability of a pre-trained network can be increased by fine-tuning the network using false highly-tortuous vessels. This can be investigated by fine-tuning the network specialized in low tortuosity vessels (NSLV) on false highly-tortuous vessels generated using the elastic transformation with $<code class="language-plaintext highlighter-rouge">\alpha=64</code>$ and $<code class="language-plaintext highlighter-rouge">\sigma=4</code>$. These parameters were chosen because they provided the best performance in our experiments. All other parameters were kept the same as those used in the fine-tuning applied to the NSLV (Section <a href="#sec:fine-tuning">2.2.2</a>).</p>

<h2 id="measuring-the-tortuosity-of-blood-vessels">Measuring the Tortuosity of Blood Vessels</h2>

<p>An approach for quantifying the tortuosity of blood vessels is required for implementing our experiments. Many different metrics have been defined in the literature (<a href="#ref-ramos2018retinal">Ramos et al. 2018</a>; <a href="#ref-Grisan2008">Grisan et al. 2008</a>; <a href="#ref-Wilson2008">Wilson et al. 2008</a>). Ramos et al. (<a href="#ref-ramos2018retinal">2018</a>) compared the tortuosity scores provided by five experts regarding blood vessels in retina fundus images. They also compared the scores of the experts with those obtained from different automated approaches for measuring tortuosity. They found a high inter-expert variability as well as different degrees of agreement between the experts and the considered automated measurements. Their results demonstrate that there is no optimal approach for defining tortuosity. Indeed, as discussed in (<a href="#ref-Bullitt2003">Bullitt et al. 2003</a>), different types of tortuosity can be considered. Therefore, any given tortuosity measurement will have advantages and drawbacks. In this work, we calculate the tortuosity of blood vessels using linear regression residuals <sup id="fnref:2" role="doc-noteref"><a href="#fn:2" class="footnote" rel="footnote">2</a></sup>.</p>

<p>The tortuosity is obtained as follows. First, the centerlines of the blood vessels are calculated using the Palàgyi-Kuba topological thinning algorithm (<a href="#ref-Palagyi1998">Palàgyi and Kuba 1998</a>). Next, we associate a tortuosity value to each pixel of the generated centerlines. As illustrated in Figure <a href="#fig:tort_method">4</a>, given a reference centerline pixel $<code class="language-plaintext highlighter-rouge">p_c(i)</code>$ belonging to a vessel segment, we define a circle of radius $<code class="language-plaintext highlighter-rouge">r</code>$ centered at $<code class="language-plaintext highlighter-rouge">p_c(i)</code>$. The centerline pixels inside this circle define the neighborhood of $<code class="language-plaintext highlighter-rouge">p_c(i)</code>$. Then, a line $<code class="language-plaintext highlighter-rouge">l</code>$ is fitted to the set of neighboring pixels using least-squares linear regression. The tortuosity of $<code class="language-plaintext highlighter-rouge">p_c(i)</code>$ is then defined as the average of the point-to-line distances between the neighboring pixels of $<code class="language-plaintext highlighter-rouge">p_c(i)</code>$ and $<code class="language-plaintext highlighter-rouge">l</code>$ (dashed lines in Figure <a href="#fig:tort_method">4</a>). In other words, the tortuosity is given by the root mean squared error of the least-squares regression of the neighborhood of $<code class="language-plaintext highlighter-rouge">p_c(i)</code>$. If the blood vessel segment around $<code class="language-plaintext highlighter-rouge">p_c(i)</code>$ is relatively straight, the respective tortuosity will be small. Contrariwise, if the segment cannot be well represented by a straight line, the tortuosity will be large. The overall tortuosity of the blood vessels in an image is then defined as the average tortuosity of the centerline pixels, that is</p>

<pre><code class="language-math">\begin{equation}
T = \frac{1}{q}\sum_{i=1}^{q} p_c(i),
\end{equation}
</code></pre>
<p>where $<code class="language-plaintext highlighter-rouge">q</code>$ is the number of centerline pixels. Notice that the radius $<code class="language-plaintext highlighter-rouge">r</code>$ controls the size of the detected tortuous structures. For smaller values of $<code class="language-plaintext highlighter-rouge">r</code>$, small sinuous structures will have larger tortuosity values. For larger values of $<code class="language-plaintext highlighter-rouge">r</code>$, longer vessels with smoother curvatures will be recognized as more tortuous. Thus, parameter $<code class="language-plaintext highlighter-rouge">r</code>$ controls the scale of the analysis. The computational cost of calculating the tortuosity is dominated by the linear regression for large $<code class="language-plaintext highlighter-rouge">r</code>$, which has an asymptotic time complexity of $<code class="language-plaintext highlighter-rouge">O(r)</code>$. Therefore, the calculation of the average tortuosity for a single image has a time complexity of $<code class="language-plaintext highlighter-rouge">O(rq)</code>$. For the experiments in this work, we set $<code class="language-plaintext highlighter-rouge">r=10</code>$ since it allows the detection of sharp blood vessel turns in the mouse cortex. The calculation of the average tortuosity of all blood vessels in an image with a resolution of $<code class="language-plaintext highlighter-rouge">1376\times 1104</code>$ pixels takes around 9 seconds using the computer described in Section <a href="#s:imp">2.6</a>. An example of tortuosity values obtained for a sample can be found in Figure <a href="#fig:tort_example">[fig:tort_example]</a> of the Supplementary Material.</p>

<figure id="fig:tort_method" data-latex-placement="ht">
[Image omitted for text-only version]
<figcaption>Illustration of the methodology used for calculating the tortuosity of a blood vessel segment. A straight line is adjusted to the points inside a circle of radius <span class="math inline"><em>r</em></span> centered at a reference point <span class="math inline"><em>p</em><sub><em>c</em></sub>(<em>i</em>)</span>. The tortuosity associated to point <span class="math inline"><em>p</em><sub><em>c</em></sub>(<em>i</em>)</span> is given by the average distance between the line and the points inside the circle.</figcaption>
</figure>

<h2 id="dataset">Dataset</h2>

<p>To apply the methodology proposed in this work, we use a dataset composed of 1838 3D volumes, all obtained from the cerebral cortices of mice. All volumes were collected in 3D using confocal microscopy and have a resolution of $<code class="language-plaintext highlighter-rouge">1376 \times 1104 \times 51</code>$ voxels, each voxel representing $<code class="language-plaintext highlighter-rouge">0.908\mu m \times 0.908\mu m \times 1\mu m</code>$. The procedure used for obtaining the volumes is described in Ouellette et al. (<a href="#ref-Ouellette2020">2020</a>).</p>

<p>To obtain the ground truth labels, we used a semi-supervised segmentation approach. This same strategy was previously used in other works (<a href="#ref-Ouellette2020">Ouellette et al. 2020</a>; <a href="#ref-Lacoste2014">Lacoste et al. 2014</a>). First, a Gaussian filter with unit standard deviation is applied to each 3D volume. Then, vessel regions are identified by an adaptive thresholding algorithm with a window size of $<code class="language-plaintext highlighter-rouge">100 \mu m \times 100\mu m</code>$ applied to each image along the depth of the volume (z-direction). Next, connected components smaller than $<code class="language-plaintext highlighter-rouge">500 \mu m^3</code>$ are removed. Since we are interested in evaluating the performance of 2D CNNs, the maximum intensity projections (MIP) of the volumes (along with their respective segmentations) were used as input to the networks – i.e., 2D images with a resolution of $<code class="language-plaintext highlighter-rouge">1376 \times 1104</code>$ pixels. Please refer to Ouellette et al. (<a href="#ref-Ouellette2020">2020</a>) for a more detailed description of the methodology. An example of labeled cortical vasculature is depicted in Figure <a href="#fig:dataset_example">5</a>.</p>

<figure id="fig:dataset_example" data-latex-placement="ht">
[Image omitted for text-only version]
<figcaption>Labeled cortical vasculature obtained by the semi-supervised segmentation approach.</figcaption>
</figure>

<p>In order to separate the images between sets of high and low tortuosity blood vessels, the average tortuosity value is calculated for each image in the dataset. The 100 images resulting in the highest average tortuosity were labeled as samples containing blood vessels with high tortuosity. Similarly, the 100 images with the lowest average tortuosity were labeled as low tortuosity vessel samples. For performance reasons, each image was divided into 16 windows resulting in 1600 samples for each class with a resolution of $<code class="language-plaintext highlighter-rouge">344 \times 276</code>$ pixels. We were careful not to include windows from the same image in both training and validation or test sets. All analyses presented in Section <a href="#sec:results">3</a> were done using these 3200 samples.</p>

<h2 id="implementation-details">Implementation Details</h2>

<p>All experiments were implemented using PyTorch <sup id="fnref:3" role="doc-noteref"><a href="#fn:3" class="footnote" rel="footnote">3</a></sup>. The experiments ran on a desktop computer equipped with an Intel i5-10400f 6 core and 12 threads CPU, 16 GB of RAM, and a Nvidia RTX 2060 6GB GPU. The total processing time of all experiments was approximately 34 days.</p>

<h1 id="results-and-discussion">Results and Discussion</h1>

<h2 id="generation-of-the-specialized-networks">Generation of the Specialized Networks</h2>

<p>Two networks were optimized using the methodology described in Section <a href="#sec:creating_specialized">2.2.1</a>, each specialized in segmenting blood vessels with either low or high tortuosity. After training, the NSLV obtained an average IoU of 0.8882 <sup id="fnref:4" role="doc-noteref"><a href="#fn:4" class="footnote" rel="footnote">4</a></sup>. The NSHV had an average IoU of 0.9158 <sup id="fnref:5" role="doc-noteref"><a href="#fn:5" class="footnote" rel="footnote">5</a></sup>. These results are comparable to the performance obtained by other works in the literature focused on the segmentation of blood vessels imaged by confocal microscopy (<a href="#ref-Todorov2020">Todorov et al. 2020</a>; <a href="#ref-Tahir2021">Tahir et al. 2021</a>). Figure <a href="#fig:segmentation_quality">6</a> shows examples of results obtained by the CNNs when compared to the ground truth labels.</p>

<figure id="fig:segmentation_quality" data-latex-placement="ht">
[Image omitted for text-only version]
<figcaption>Example of segmentations produced by the specialized networks. Top row: network specialized on low tortuosity vessels applied to an image containing mostly low tortuosity vessels. Bottom row: network specialized on high tortuosity vessels applied to an image containing mostly high tortuosity vessels.</figcaption>
</figure>

<p>It is worth mentioning that even though our experiments evaluate the segmentation performance using IoU, we optimized our networks using the cross-entropy as loss function. We observed that using the IoU or Dice as loss functions led to a similar performance compared to the cross-entropy, but the cross-entropy led to better convergence.</p>

<h2 id="fine-tuning-the-specialized-networks">Fine-Tuning the Specialized Networks</h2>

<p>After optimizing the specialized networks, we examined their ability in segmenting data that they originally were not trained on. When used for segmenting blood vessels with high tortuosity, the NSLV obtained an average IoU of 0.6825. Similarly, when segmenting low tortuosity vessels, the NSHV had an average IoU of 0.6516. Figure <a href="#fig:biased">7</a> shows examples of typical segmentation results. Figure <a href="#fig:biased">7</a>B shows the segmentation of a sample containing blood vessels with high tortuosity, obtained using the NSLV. In this case, small connected components that are not observed in the ground truth (Figure <a href="#fig:biased">7</a>A) are created. These components represent false positives and thus lead to a high recall and low precision. Such artifacts seem to be associated with the fact that this network tends to classify regions of constant intensity as blood vessels since low tortuosity vessels usually do not present longitudinal intensity discontinuities. Figure <a href="#fig:biased">7</a>D shows a typical result obtained by the NSHV when applied to images containing blood vessels that predominantly have low tortuosity. By comparing this segmentation with the ground truth (Figure <a href="#fig:biased">7</a>C), a considerable caliber underestimation is observed, that is, the segmented blood vessels are typically thinner than the ground truth. Since the result contains many false negatives, the NSHV leads to high precision and low recall when segmenting images with mostly low tortuosity vessels.</p>

<p>The observed segmentation problems can be considered a typical consequence of applying a pre-trained network to a dataset having different statistics than the dataset used for training. Nevertheless, we emphasize that in the present study, the dataset differences are not caused by changes in the sample preparation or imaging protocol but by differences in the morphology of the underlying biological system.</p>

<figure id="fig:biased">
[Image omitted for text-only version]
<figcaption>Segmentation artifacts observed when segmenting datasets using inadequate pre-trained networks. (A) Ground truth of a sample containing mostly high tortuosity blood vessels. (B) Segmentation of the sample shown in (A) using a network trained on low tortuosity blood vessels. (C) Ground truth of a low tortuosity blood vessel image. (D) Segmentation of the sample shown in (C) using a network trained on high tortuosity blood vessels.</figcaption>
</figure>

<p>Having made the initial characterization of the segmentation problems, we proceed to try to revert the observed biases by fine-tuning the specialized networks. Thus, as presented in Section <a href="#sec:fine-tuning">2.2.2</a>, each specialized network undergoes a refinement step using samples from the dataset where the morphometry analysis is to be performed. Figure <a href="#fig:iou_rt_straight">8</a> shows the performance of the NSHV when segmenting vessels with low tortuosity as a function of the number of images used for fine-tuning. The result shows that the values of $<code class="language-plaintext highlighter-rouge">IoU_l</code>$ increase with the number of samples. Still, $<code class="language-plaintext highlighter-rouge">R_l</code>$ does not display the same behavior. The tortuosity is overestimated when the fine-tuning step is performed with up to approximately 13 images. When more images are used, $<code class="language-plaintext highlighter-rouge">R_l</code>$ stabilizes around 1, while $<code class="language-plaintext highlighter-rouge">IoU_l</code>$ slowly increases. It is also interesting to note that $<code class="language-plaintext highlighter-rouge">IoU_l</code>$ and $<code class="language-plaintext highlighter-rouge">R_l</code>$ are not correlated. Therefore, improvements in a pixelwise accuracy metric, such as the IoU, do not necessarily improve the tortuosity estimation.</p>

<figure id="fig:iou_rt_straight" data-latex-placement="ht">
[Image omitted for text-only version]
<figcaption>Performance of the network specialized in high tortuosity vessels when segmenting low tortuosity vessels as a function of the number of low tortuosity images used for fine-tuning the network. The plot shows the average values of <span class="math inline"><em>R</em><sub><em>l</em></sub></span> and <span class="math inline"><em>I</em><em>o</em><em>U</em><sub><em>l</em></sub></span> obtained after repeating the refining experiment <span class="math inline"><em>K</em></span> times (defined in Equation <a href="#eq:k">[eq:k]</a>). Error bars depict the standard deviation of <span class="math inline"><em>R</em><sub><em>l</em></sub></span> and <span class="math inline"><em>I</em><em>o</em><em>U</em><sub><em>l</em></sub></span> over the <span class="math inline"><em>K</em></span> repetitions. The dashed horizontal lines represent the base performance of the NSHV when segmenting low tortuosity vessels without fine-tuning. </figcaption>
</figure>

<p>Figure <a href="#fig:iou_rt_tortuous">9</a> shows the relationship between the performance of the NSLV when segmenting vessels with high tortuosity and the number of images used for fine-tuning the network. As refinement progresses and more high tortuosity examples are presented to the network, both values of $<code class="language-plaintext highlighter-rouge">R_h</code>$ and $<code class="language-plaintext highlighter-rouge">IoU_h</code>$ increase. Also, there is a considerable improvement in the segmentation quality ($<code class="language-plaintext highlighter-rouge">IoU_h</code>$) when just a few samples are used for fine-tuning. In this case, it was possible to achieve an average IoU of 0.9 with approximately 10 images, in contrast to the 40 images used for achieving the same performance in the previous experiment (Figure <a href="#fig:iou_rt_straight">8</a>). Low tortuosity vessels usually have simple morphologies. By fine-tuning the network to just a few additional samples containing high tortuosity vessels, the network quickly adapted to the new morphological characteristics of the samples. Therefore, it was easier to optimize a network for recognizing more complex vessels, starting from a simpler representation, than to optimize it to simplify a more complex vessel representation.</p>

<figure id="fig:iou_rt_tortuous">
[Image omitted for text-only version]
<figcaption>Performance of the network specialized in low tortuosity vessels when segmenting high tortuosity vessels as a function of the number of high tortuosity images used for fine-tuning the network. The plot shows the average values of <span class="math inline"><em>R</em><sub><em>h</em></sub></span> and <span class="math inline"><em>I</em><em>o</em><em>U</em><sub><em>h</em></sub></span> obtained after repeating the refining experiment <span class="math inline"><em>K</em></span> times (defined in Equation <a href="#eq:k">[eq:k]</a>). Error bars depict the standard deviation of <span class="math inline"><em>R</em><sub><em>h</em></sub></span> and <span class="math inline"><em>I</em><em>o</em><em>U</em><sub><em>h</em></sub></span> over the <span class="math inline"><em>K</em></span> repetitions. The dashed horizontal lines represent the base performance of the NSLV when segmenting high tortuosity vessels without fine-tuning.</figcaption>
</figure>

<p>The results obtained from the two experiments considered in this section show that both networks segmented the out-of-distribution samples with similar accuracy. However, each experiment resulted in different degrees of tortuosity underestimation or overestimation depending on the number of images used for fine-tuning. As observed in Figure <a href="#fig:iou_rt_straight">8</a>, without fine-tuning, the NSHV overestimated the average tortuosity of the low tortuosity data by approximately $<code class="language-plaintext highlighter-rouge">5\%</code>$ compared to the NSLV performance, given that a value of $<code class="language-plaintext highlighter-rouge">R_l=1.05</code>$ was obtained when no fine-tuning was performed. Similarly, the NSLV underestimated the average tortuosity value of the high tortuosity data by approximately $<code class="language-plaintext highlighter-rouge">8\%</code>$ compared to the NSHV performance, as shown in Figure <a href="#fig:iou_rt_tortuous">9</a>. It was observed that these errors could be mitigated by applying a fine-tuning step with 10 to 40 additional images (0.625% to 2.5% of the original training set), depending on the tortuosity of the blood vessels, which led to a more accurate estimation of the tortuosity.</p>

<h2 id="improving-the-tortuosity-estimation-using-data-augmentation">Improving the Tortuosity Estimation Using Data Augmentation</h2>

<p>We first verified if data augmentation can improve the estimation of the tortuosity when training the network from scratch. For this experiment, the procedure described in Section <a href="#sec:augSc">2.3.1</a> was used. Figure <a href="#fig:rt_da_varying_alpha">10</a> displays $<code class="language-plaintext highlighter-rouge">R_{sf}</code>$ and $<code class="language-plaintext highlighter-rouge">IoU_{sf}</code>$ as a function of the parameter $<code class="language-plaintext highlighter-rouge">\alpha</code>$ used in the elastic transformation. The value of $<code class="language-plaintext highlighter-rouge">\sigma</code>$ was set to 4. We observed that keeping $<code class="language-plaintext highlighter-rouge">\sigma=4</code>$ and varying $<code class="language-plaintext highlighter-rouge">\alpha</code>$ between 0 and 70 covered several examples of tortuous blood vessels found in our dataset. There is a considerable drop in $<code class="language-plaintext highlighter-rouge">R_{sf}</code>$ when $<code class="language-plaintext highlighter-rouge">\alpha</code>$ is between 1 and 10. On the other hand, for $<code class="language-plaintext highlighter-rouge">\alpha \geq 12</code>$, training with the set of false highly-tortuous vessels improves the tortuosity estimation. The best performance is observed when $<code class="language-plaintext highlighter-rouge">\alpha</code>$ is around 64, where $<code class="language-plaintext highlighter-rouge">\bar{R}_{sf} \approx 1</code>$ even though the segmentation performance is relatively low, having an average value of $<code class="language-plaintext highlighter-rouge">\bar{IoU}_{sf}=0.78</code>$. Another important result is the lack of a strong correlation between $<code class="language-plaintext highlighter-rouge">R_{sf}</code>$ and $<code class="language-plaintext highlighter-rouge">IoU_{sf}</code>$ for different values of $<code class="language-plaintext highlighter-rouge">\alpha</code>$. This reinforces the idea that improvements in vessel morphometry may be caused by effects that are not properly quantified by pixelwise accuracy metrics.</p>

<figure id="fig:rt_da_varying_alpha">
[Image omitted for text-only version]
<figcaption>Performance of the network trained with false highly-tortuous vessels when subjected to the morphometry of real blood vessels with high tortuosity. <span class="math inline"><em>α</em></span> is the scale factor used in the elastic transformation to obtain the set of false highly-tortuous vessels. Error bars represent the standard errors of the average values of <span class="math inline"><em>R</em><sub><em>s</em><em>f</em></sub></span> and <span class="math inline"><em>I</em><em>o</em><em>U</em><sub><em>s</em><em>f</em></sub></span> of the test set. The dashed horizontal lines represent the base performance of the NSLV when segmenting high tortuosity vessels.</figcaption>
</figure>

<p>We also investigate if data augmentation can lead to a better estimation of the tortuosity during fine-tuning. The results of applying the methodology described in Section <a href="#sec:augFine">2.3.2</a> are depicted in Figure <a href="#fig:refinement_behaviour">11</a>. Contrariwise to what was observed in the results shown in Figures <a href="#fig:iou_rt_straight">8</a>, <a href="#fig:iou_rt_tortuous">9</a> and <a href="#fig:rt_da_varying_alpha">10</a>, there was no noticeable improvement on the values of $<code class="language-plaintext highlighter-rouge">IoU_h</code>$ and $<code class="language-plaintext highlighter-rouge">R_h</code>$. Even after fine-tuning the network using 40 additional images, the performance of the network was, on average, $<code class="language-plaintext highlighter-rouge">\bar{R}_h \approx 0.9</code>$ and $<code class="language-plaintext highlighter-rouge">\bar{IoU}_h \approx 0.8</code>$. Thus, data augmentation was not enough to avoid an underestimation of the tortuosity. This result contrasts with the improvement obtained when applying data augmentation for training the network from scratch.</p>

<figure id="fig:refinement_behaviour">
[Image omitted for text-only version]
<figcaption>Performance of the network specialized in low tortuosity vessels when segmenting high tortuosity vessels as it goes through a fine-tuning step with increasingly more false highly-tortuous vessels. The plot shows the average values of <span class="math inline"><em>R</em><sub><em>h</em></sub></span> and <span class="math inline"><em>I</em><em>o</em><em>U</em><sub><em>h</em></sub></span> obtained after repeating the refining experiment <span class="math inline"><em>K</em></span> times (defined in Equation <a href="#eq:k">[eq:k]</a>). Error bars depict the standard deviation of <span class="math inline"><em>R</em><sub><em>h</em></sub></span> and <span class="math inline"><em>I</em><em>o</em><em>U</em><sub><em>h</em></sub></span> over the <span class="math inline"><em>K</em></span> repetitions. The dashed horizontal lines represent the base performance of the NSLV when segmenting high tortuosity vessels without fine-tuning.</figcaption>
</figure>

<p>Some considerations can be made from the obtained result. First, data augmentation was unable to correct the bias of the NSLV after fine-tuning the network. In addition, $<code class="language-plaintext highlighter-rouge">\bar{R}_h</code>$ values have large standard deviations, which indicates that the quality of the morphometry obtained by the network is not reliable. Additional approaches could be investigated for fine-tuning the network. Some possibilities include: modifying the learning rate scheduler for finding a solution that better generalizes the data, increasing the number of images used in the fine-tuning step, and using different data augmentation techniques.</p>

<h1 id="discussion">Discussion</h1>

<p>The segmentation and characterization of blood vessels is an important task for diagnosing many types of diseases as well as for studying the development of neurovascular systems. Therefore, defining robust and unbiased approaches for identifying blood vessels in digital images is of great importance. Usually, most of the focus is placed on obtaining good segmentation accuracy, commonly measured using the Dice or IoU metrics. We focused on identifying to which extent segmentation accuracy is related to morphometric precision when measuring the tortuosity of blood vessels.</p>

<p>Two main investigations were proposed. The first was to identify if the tortuosity calculated for blood vessels may change depending on the CNN used for segmenting the blood vessels, even in situations were the dataset used and the segmentation accuracy is similar for the CNNs. A procedure was developed for comparing a CNN that was trained only on images containing mostly high tortuosity blood vessels with a CNN that was trained on low tortuosity vessels and fine-tuned on vessels with high tortuosity. The opposite situation was also investigated. We found that the tortuosity values obtained from a CNN trained from scratch may not agree with those obtained by a CNN that was pre-trained on data acquired from a different experimental condition, and consequently, with slightly different tortuosity statistics. CNNs trained on blood vessels with high tortuosity tended to lead to an overestimation of the tortuosity, while CNNs trained on blood vessels with low tortuosity resulted in an underestimation of the tortuosity.</p>

<p>The second investigation involved the definition of possible procedures for reducing the observed biases. A fine-tuning approach on the dataset used for inference and a data augmentation methodology were considered. We identified that the tortuosity biases could be corrected by applying a fine-tuning step using additional annotated images. On average, around 13 new annotated images were required for removing the biases. Interestingly, the improvement in tortuosity estimation was not correlated with changes in segmentation accuracy when analyzing the low tortuosity dataset.</p>

<p>Regarding data augmentation, we investigated a possible bias-reducing data augmentation approach using elastic transformations of the training set. This strategy can be helpful for small datasets and also requires fewer manually annotated images. We observed that training the network using the proposed data augmentation approach did not lead to a significant improvement of the IoU metric. However, this approach made the network less biased when used for morphometric quantifications. This means that adding proper data augmentation techniques when training CNNs might be useful even if they do not improve segmentation accuracy. Conversely, when using off-the-shelf networks, it might be useful to give preference to networks that were trained with appropriate data augmentation techniques, even if its accuracy is lower than other state-of-the-art architectures. This result also highlights the importance of correctly optimizing a blood vessel morphometry pipeline for prospective studies regarding vascular systems. The optimization should not consider only pointwise accuracy metrics but also the performance of metrics associated with morphological properties of the blood vessels.</p>

<p>To our knowledge, a similar investigation regarding tortuosity biases has not been performed before in the literature. On the other hand, analyses involving the influence of segmentation on the morphometry of bone trabeculae (<a href="#ref-Parkinson2008">Parkinson et al. 2008</a>) and brain structures (<a href="#ref-Callaert2014">Callaert et al. 2014</a>; <a href="#ref-Rajagopalan2014">Rajagopalan et al. 2014</a>; <a href="#ref-Katuwal2016">Katuwal et al. 2016</a>) as well as radiotherapy planning (<a href="#ref-Poel2021">Poel et al. 2021</a>) have been performed before, where similar results were obtained. For instance, established pipelines for voxel-based morphometry of brain MRIs (Magnetic Resonance Images) can lead to inconsistent results regarding the estimation of age-related gray matter volume decrease (<a href="#ref-Callaert2014">Callaert et al. 2014</a>), brain volume in autism spectrum disorder (<a href="#ref-Katuwal2016">Katuwal et al. 2016</a>), and gray matter volume atrophy for amyotrophic lateral sclerosis patients (<a href="#ref-Rajagopalan2014">Rajagopalan et al. 2014</a>). Furthermore, in (<a href="#ref-Poel2021">Poel et al. 2021</a>) the authors report that during radiotherapy planning, geometrical similarity scores (such as the Dice coefficient) used to evaluate the segmentation of peripheral (not-targeted) organs, do not correlate well with the changes in the radiation dosage they receive. To mitigate possible morphometry biases, the authors suggested that new evaluation metrics must be developed, in the sense that they should reflect more accurately the underlying clinical problem – in their case, radiation dosage on peripheral organs. In (<a href="#ref-Rebsamen2020">Rebsamen et al. 2020</a>) and (<a href="#ref-Cruz2021">Cruz et al. 2021</a>), deep neural networks were trained to directly optimize the morphological features of brain MRIs, rather than the segmentation accuracy. Still, little attention has been given to the influence of network training on morphometry.</p>

<p>For future studies, it would be interesting to consider the influence of segmentation on other morphological quantities, such as blood vessel length and the number of branching points. It would also be interesting to verify if the same results are obtained for other types of blood vessel images such as those acquired by retinal imaging and by angiography. Actually, the same analysis considered in this study can be applied to any system composed of a segmentation step and a downstream quantification task.</p>

<h1 id="conclusion">Conclusion</h1>

<p>Going forward, we argue that more focus should be given to the impact of neural network segmentation on downstream tasks related to blood vessel morphometry. Specifically, when developing computerized systems, it is important to take into account that a high, but not perfect, segmentation performance does not necessarily lead to properly segmented images for morphometric analyses. This is especially true for neural networks given that explaining the results provided by such systems is still an active area of research (<a href="#ref-Rudin2019">Rudin 2019</a>; <a href="#ref-AdebayoNEURIPS2018">Adebayo et al. 2018</a>). As shown in our analysis, fine-tuning a pre-trained neural network on new data might not completely remove morphometric biases that may be present in the original network. In such cases, we argue that the network should be retrained from scratch using new data and image augmentation techniques that can directly perturb the morphological measurements that will be calculated.</p>

<h1 id="funding">Funding</h1>

<p>Cesar H. Comin thanks FAPESP (grants no. 18/09125-4 and 21/12354-8) for financial support. The authors acknowledge the support of the Government of Canada’s New Frontiers in Research Fund (NFRF) (NFRFE-2019-00641) and the Latin America Research Awards (LARA 2021). This study was financed in part by the Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - Brasil (CAPES) - Finance Code 001.</p>

<h1 id="declaration-of-competing-interest">Declaration of Competing Interest</h1>

<p>The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.</p>

<h1 id="appendix-performance-metrics-used-in-this-work">Appendix: Performance Metrics Used in This Work</h1>

<table>
  <thead>
    <tr>
      <th style="text-align: left"><strong>Metric</strong></th>
      <th style="text-align: left"><strong>Description</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">S_{sl}</code>$</td>
      <td style="text-align: left">Set of segmented images obtained by the application of the network specialized in low tortuosity vessels on images containing low tortuosity vessels.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">T_{sl}</code>$</td>
      <td style="text-align: left">Average tortuosity values of $<code class="language-plaintext highlighter-rouge">S_{sl}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">S_{sh}</code>$</td>
      <td style="text-align: left">Set of segmented images obtained by the application of the network specialized in high tortuosity vessels on images containing high tortuosity vessels.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">T_{sh}</code>$</td>
      <td style="text-align: left">Average tortuosity values of $<code class="language-plaintext highlighter-rouge">S_{sh}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">S_{fl}</code>$</td>
      <td style="text-align: left">Set of segmented images obtained by the application of the network specialized in high tortuosity vessels and fine-tuned on low tortuosity vessels on images containing low tortuosity vessels.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">T_{fl}</code>$</td>
      <td style="text-align: left">Average tortuosity values of $<code class="language-plaintext highlighter-rouge">S_{fl}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">S_{fh}</code>$</td>
      <td style="text-align: left">Set of segmented images obtained by the application of the network specialized in low tortuosity vessels and fine-tuned on high tortuosity vessels on images containing high tortuosity vessels.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">T_{fh}</code>$</td>
      <td style="text-align: left">Average tortuosity values of $<code class="language-plaintext highlighter-rouge">S_{fh}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">IoU_l</code>$</td>
      <td style="text-align: left">Average IoU between the set of segmented images $<code class="language-plaintext highlighter-rouge">S_{fl}</code>$ and $<code class="language-plaintext highlighter-rouge">S_{sl}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">R_l</code>$</td>
      <td style="text-align: left">Average ratio between the set of tortuosities $<code class="language-plaintext highlighter-rouge">T_{fl}</code>$ and $<code class="language-plaintext highlighter-rouge">T_{sl}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">IoU_h</code>$</td>
      <td style="text-align: left">Average IoU between the set of segmented images $<code class="language-plaintext highlighter-rouge">S_{fh}</code>$ and $<code class="language-plaintext highlighter-rouge">S_{sh}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">R_h</code>$</td>
      <td style="text-align: left">Average ratio between the set of tortuosities $<code class="language-plaintext highlighter-rouge">T_{fh}</code>$ and $<code class="language-plaintext highlighter-rouge">T_{sh}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">S_{sf}</code>$</td>
      <td style="text-align: left">Set of segmented images obtained by the application of the network specialized in false highly-tortuous vessels on images containing high tortuosity vessels.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">T_{sf}</code>$</td>
      <td style="text-align: left">Average tortuosity values of $<code class="language-plaintext highlighter-rouge">S_{sf}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">IoU_{sf}</code>$</td>
      <td style="text-align: left">Average IoU between the set of segmented images $<code class="language-plaintext highlighter-rouge">S_{sf}</code>$ and $<code class="language-plaintext highlighter-rouge">S_{sh}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">R_{sf}</code>$</td>
      <td style="text-align: left">Average ratio between the set of tortuosities $<code class="language-plaintext highlighter-rouge">T_{sf}</code>$ and $<code class="language-plaintext highlighter-rouge">T_{sh}</code>$.</td>
    </tr>
    <tr>
      <td style="text-align: left">$<code class="language-plaintext highlighter-rouge">\bar{X}</code>$</td>
      <td style="text-align: left">Average value of metric $<code class="language-plaintext highlighter-rouge">X</code>$ over $<code class="language-plaintext highlighter-rouge">K</code>$ repetitions of an experiment, where $<code class="language-plaintext highlighter-rouge">K</code>$ is defined in Equation <a href="#eq:k">[eq:k]</a>.</td>
    </tr>
  </tbody>
</table>

<p>Symbols and corresponding definitions of the metrics used for quantifying the performance of blood vessel segmentation and tortuosity calculation. {#tab:metrics}</p>

<div id="refs" class="references csl-bib-body hanging-indent">

<div id="ref-AdebayoNEURIPS2018" class="csl-entry">

Adebayo, Julius, Justin Gilmer, Michael Muelly, Ian Goodfellow, Moritz Hardt, and Been Kim. 2018. “Sanity Checks for Saliency Maps.” In *Advances in Neural Information Processing Systems*, edited by S. Bengio, H. Wallach, H. Larochelle, K. Grauman, N. Cesa-Bianchi, and R. Garnett, vol. 31. Curran Associates, Inc. <a href="https://proceedings.neurips.cc/paper/2018/file/294a8ed24b1ad22ec2e7efea049b8737-Paper.pdf">https://proceedings.neurips.cc/paper/2018/file/294a8ed24b1ad22ec2e7efea049b8737-Paper.pdf</a>.

</div>

<div id="ref-Andreini2019" class="csl-entry">

Andreini, Paolo, Giorgio Ciano, Simone Bonechi, et al. 2022. “A Two-Stage GAN for High-Resolution Retinal Image Generation and Segmentation.” *Electronics* 11 (1). <a href="https://doi.org/10.3390/electronics11010060">https://doi.org/10.3390/electronics11010060</a>.

</div>

<div id="ref-Bullitt2003" class="csl-entry">

Bullitt, Elizabeth, Guido Gerig, Stephen M. Pizer, Weili Lin, and Stephen R. Aylward. 2003. “<span class="nocase">Measuring Tortuosity of the Intracerebral Vasculature from MRA Images</span>.” *IEEE Transactions on Medical Imaging* 22 (9): 1163–71. <a href="https://doi.org/10.1109/TMI.2003.816964">https://doi.org/10.1109/TMI.2003.816964</a>.

</div>

<div id="ref-Callaert2014" class="csl-entry">

Callaert, Dorothée V., Annemie Ribbens, Frederik Maes, Stephan P. Swinnen, and Nicole Wenderoth. 2014. “Assessing Age-Related Gray Matter Decline with Voxel-Based Morphometry Depends Significantly on Segmentation and Normalization Procedures.” *Frontiers in Aging Neuroscience* 6. <a href="https://doi.org/10.3389/fnagi.2014.00124">https://doi.org/10.3389/fnagi.2014.00124</a>.

</div>

<div id="ref-Canton2021" class="csl-entry">

Canton, Gador, Daniel S Hippe, Li Chen, et al. 2021. “<span class="nocase">Atherosclerotic Burden and Remodeling Patterns of the Popliteal Artery as Detected in the Magnetic Resonance Imaging Osteoarthritis Initiative Data Set</span>.” *Journal of the American Heart Association* 10 (11): e018408. <a href="https://doi.org/10.1161/JAHA.120.018408">https://doi.org/10.1161/JAHA.120.018408</a>.

</div>

<div id="ref-Cruz2021" class="csl-entry">

Cruz, Rodrigo Santa, Léo Lebrat, Pierrick Bourgeat, et al. 2021. “Going Deeper with Brain Morphometry Using Neural Networks.” *2021 IEEE 18th International Symposium on Biomedical Imaging (ISBI)*, 711–15. <a href="https://doi.org/10.1109/ISBI48211.2021.9434039">https://doi.org/10.1109/ISBI48211.2021.9434039</a>.

</div>

<div id="ref-Fernandez-Klett2020" class="csl-entry">

Fernandez-Klett, Francisco, Lasse Brandt, Camila Fernández-Zapata, et al. 2020. “<span class="nocase">Denser brain capillary network with preserved pericytes in Alzheimer’s disease</span>.” *Brain Pathology* 30 (6): 1071–86. https://doi.org/<a href="https://doi.org/10.1111/bpa.12897">https://doi.org/10.1111/bpa.12897</a>.

</div>

<div id="ref-FriasAnaya2021" class="csl-entry">

Frías-Anaya, Eduardo, Radka Gromnicova, Igor Kraev, et al. 2021. “<span class="nocase">Age-related ultrastructural neurovascular changes in the female mouse cortex and hippocampus</span>.” *Neurobiology of Aging* 101: 273–84. https://doi.org/<a href="https://doi.org/10.1016/j.neurobiolaging.2020.12.008">https://doi.org/10.1016/j.neurobiolaging.2020.12.008</a>.

</div>

<div id="ref-Goodfellow2016" class="csl-entry">

Goodfellow, Ian, Yoshua Bengio, and Aaron Courville. 2016. *Deep Learning*. MIT Press.

</div>

<div id="ref-Grisan2008" class="csl-entry">

Grisan, Enrico, Marco Foracchia, and Alfredo Ruggeri. 2008. “<span class="nocase">A novel method for the automatic grading of retinal vessel tortuosity</span>.” *IEEE Transactions on Medical Imaging* 27 (3): 310–19. <a href="https://doi.org/10.1109/TMI.2007.904657">https://doi.org/10.1109/TMI.2007.904657</a>.

</div>

<div id="ref-Gu2019" class="csl-entry">

Gu, Zaiwang, Jun Cheng, Huazhu Fu, et al. 2019. “<span class="nocase">CE-Net: Context Encoder Network for 2D Medical Image Segmentation</span>.” *IEEE Transactions on Medical Imaging* 38 (10): 2281–92. <a href="https://doi.org/10.1109/TMI.2019.2903562">https://doi.org/10.1109/TMI.2019.2903562</a>.

</div>

<div id="ref-Guzel2020" class="csl-entry">

Guzel, Sibel, Charles L Cai, Taimur Ahmad, et al. 2020. “<span class="nocase">Bumetanide Suppression of Angiogenesis in a Rat Model of Oxygen-Induced Retinopathy</span>.” *International Journal of Molecular Sciences* 21 (3). <a href="https://doi.org/10.3390/ijms21030987">https://doi.org/10.3390/ijms21030987</a>.

</div>

<div id="ref-Han2012" class="csl-entry">

Han, Hai Chao. 2012. “<span class="nocase">Twisted blood vessels: Symptoms, etiology and biomechanical mechanisms</span>.” *Journal of Vascular Research* 49 (3): 185–97. <a href="https://doi.org/10.1159/000335123">https://doi.org/10.1159/000335123</a>.

</div>

<div id="ref-He2016" class="csl-entry">

He, Kaiming, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. 2016. “<span class="nocase">Deep residual learning for image recognition</span>.” *Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition*, 770–78.

</div>

<div id="ref-Jiang2018" class="csl-entry">

Jiang, Zhexin, Hao Zhang, Yi Wang, and Seok-Bum Ko. 2018. “Retinal Blood Vessel Segmentation Using Fully Convolutional Network with Transfer Learning.” *Computerized Medical Imaging and Graphics* 68: 1–15. https://doi.org/<a href="https://doi.org/10.1016/j.compmedimag.2018.04.005">https://doi.org/10.1016/j.compmedimag.2018.04.005</a>.

</div>

<div id="ref-Jin2019" class="csl-entry">

Jin, Qiangguo, Zhaopeng Meng, Tuan D Pham, Qi Chen, Leyi Wei, and Ran Su. 2019. “<span class="nocase">DUNet: A deformable network for retinal vessel segmentation</span>.” *Knowledge-Based Systems* 178: 149–62. https://doi.org/<a href="https://doi.org/10.1016/j.knosys.2019.04.025">https://doi.org/10.1016/j.knosys.2019.04.025</a>.

</div>

<div id="ref-Katuwal2016" class="csl-entry">

Katuwal, Gajendra J., Stefi A. Baum, Nathan D. Cahill, et al. 2016. “Inter-Method Discrepancies in Brain Volume Estimation May Drive Inconsistent Findings in Autism.” *Frontiers in Neuroscience* 10. <a href="https://doi.org/10.3389/fnins.2016.00439">https://doi.org/10.3389/fnins.2016.00439</a>.

</div>

<div id="ref-Diederik2017" class="csl-entry">

Kingma, Diederik P., and Jimmy Ba. 2017. *Adam: A Method for Stochastic Optimization*. <a href="https://arxiv.org/abs/1412.6980">https://arxiv.org/abs/1412.6980</a>.

</div>

<div id="ref-Kirst2020" class="csl-entry">

Kirst, Christoph, Sophie Skriabine, Alba Vieites-Prado, et al. 2020. “<span class="nocase">Mapping the Fine-Scale Organization and Plasticity of the Brain Vasculature</span>.” *Cell* 180 (4): 780–795.e25. https://doi.org/<a href="https://doi.org/10.1016/j.cell.2020.01.028">https://doi.org/10.1016/j.cell.2020.01.028</a>.

</div>

<div id="ref-Lacoste2014" class="csl-entry">

Lacoste, Baptiste, Cesar H. Comin, Ayal Ben-Zvi, et al. 2014. “Sensory-Related Neural Activity Regulates the Structure of Vascular Networks in the Cerebral Cortex.” *Neuron* 83 (5): 1117–30. https://doi.org/<a href="https://doi.org/10.1016/j.neuron.2014.07.034">https://doi.org/10.1016/j.neuron.2014.07.034</a>.

</div>

<div id="ref-Lesage2009" class="csl-entry">

Lesage, David, Elsa D. Angelini, Isabelle Bloch, and Gareth Funka-Lea. 2009. “<span class="nocase">A review of 3D vessel lumen segmentation techniques: Models, features and extraction schemes</span>.” *Medical Image Analysis* 13 (6): 819–45. <a href="https://doi.org/10.1016/j.media.2009.07.011">https://doi.org/10.1016/j.media.2009.07.011</a>.

</div>

<div id="ref-Li2021" class="csl-entry">

Li, Tao, Wang Bo, Chunyu Hu, et al. 2021. “<span class="nocase">Applications of deep learning in fundus images: A review</span>.” *Medical Image Analysis* 69: 101971. https://doi.org/<a href="https://doi.org/10.1016/j.media.2021.101971">https://doi.org/10.1016/j.media.2021.101971</a>.

</div>

<div id="ref-Liskowski2016" class="csl-entry">

Liskowski, P, and K Krawiec. 2016. “Segmenting Retinal Blood Vessels With Deep Neural Networks.” *IEEE Transactions on Medical Imaging* 35 (11): 2369–80.

</div>

<div id="ref-Livne2019" class="csl-entry">

Livne, Michelle, Jana Rieger, Orhun Utku Aydin, et al. 2019. “<span class="nocase">A U-Net Deep Learning Framework for High Performance Vessel Segmentation in Patients With Cerebrovascular Disease</span>.” *Frontiers in Neuroscience* 13: 97. <a href="https://doi.org/10.3389/fnins.2019.00097">https://doi.org/10.3389/fnins.2019.00097</a>.

</div>

<div id="ref-Ma2019" class="csl-entry">

Ma, Samantha J., Mona Sharifi Sarabi, Lirong Yan, et al. 2019. “<span class="nocase">Characterization of lenticulostriate arteries with high resolution black-blood T1-weighted turbo spin echo with variable flip angles at 3 and 7 Tesla</span>.” *NeuroImage* 199 (February): 184–93. <a href="https://doi.org/10.1016/j.neuroimage.2019.05.065">https://doi.org/10.1016/j.neuroimage.2019.05.065</a>.

</div>

<div id="ref-Maninis2016" class="csl-entry">

Maninis, Kevis-Kokitsi, Jordi Pont-Tuset, Pablo Arbeláez, and Luc Van Gool. 2016. “Deep Retinal Image Understanding.” In *Medical Image Computing and Computer-Assisted Intervention – MICCAI 2016*, edited by Sebastien Ourselin, Leo Joskowicz, Mert R. Sabuncu, Gozde Unal, and William Wells. Springer International Publishing.

</div>

<div id="ref-MartinezMurcia2021" class="csl-entry">

Martinez-Murcia, Francisco J., Andrés Ortiz, Javier Ramírez, Juan M. Górriz, and Ricardo Cruz. 2021. “Deep Residual Transfer Learning for Automatic Diagnosis and Grading of Diabetic Retinopathy.” *Neurocomputing* 452: 424–34. https://doi.org/<a href="https://doi.org/10.1016/j.neucom.2020.04.148">https://doi.org/10.1016/j.neucom.2020.04.148</a>.

</div>

<div id="ref-Moccia2018" class="csl-entry">

Moccia, Sara, Elena De Momi, Sara El Hadji, and Leonardo S Mattos. 2018. “<span class="nocase">Blood vessel segmentation algorithms — Review of methods, datasets and evaluation metrics</span>.” *Computer Methods and Programs in Biomedicine* 158: 71–91. https://doi.org/<a href="https://doi.org/10.1016/j.cmpb.2018.02.001">https://doi.org/10.1016/j.cmpb.2018.02.001</a>.

</div>

<div id="ref-Ouellette2020" class="csl-entry">

Ouellette, Julie, Xavier Toussay, Cesar H. Comin, et al. 2020. “Vascular Contributions to 16p11.2 Deletion Autism Syndrome Modeled in Mice.” *Nature Neuroscience* 23 (9): 1090–101. <a href="https://doi.org/10.1038/s41593-020-0663-1">https://doi.org/10.1038/s41593-020-0663-1</a>.

</div>

<div id="ref-Palagyi1998" class="csl-entry">

Palàgyi, Kàlmàn, and Attila Kuba. 1998. “<span class="nocase">A 3D 6-subiteration thinning algorithm for extracting medial lines</span>.” *Pattern Recognition Letters* 19 (7): 613–27. https://doi.org/<a href="https://doi.org/10.1016/S0167-8655(98)00031-2">https://doi.org/10.1016/S0167-8655(98)00031-2</a>.

</div>

<div id="ref-Parkinson2008" class="csl-entry">

Parkinson, I. H., A. Badiei, and N. L. Fazzalari. 2008. “Variation in Segmentation of Bone from Micro-CT Imaging: Implications for Quantitative Morphometric Analysis.” *Australasian Physics &amp; Engineering Sciences in Medicine* 31 (2): 160–64. <a href="https://doi.org/10.1007/BF03178592">https://doi.org/10.1007/BF03178592</a>.

</div>

<div id="ref-Poel2021" class="csl-entry">

Poel, Robert, Elias Rüfenacht, Evelyn Hermann, et al. 2021. “The Predictive Value of Segmentation Metrics on Dosimetry in Organs at Risk of the Brain.” *Medical Image Analysis* 73: 102161. https://doi.org/<a href="https://doi.org/10.1016/j.media.2021.102161">https://doi.org/10.1016/j.media.2021.102161</a>.

</div>

<div id="ref-Potente2011" class="csl-entry">

Potente, Michael, Holger Gerhardt, and Peter Carmeliet. 2011. “<span class="nocase">Basic and Therapeutic Aspects of Angiogenesis</span>.” *Cell* 146 (6): 873–87. https://doi.org/<a href="https://doi.org/10.1016/j.cell.2011.08.039">https://doi.org/10.1016/j.cell.2011.08.039</a>.

</div>

<div id="ref-Rajagopalan2014" class="csl-entry">

Rajagopalan, Venkateswaran, Guang H. Yue, and Erik P. Pioro. 2014. “Do Preprocessing Algorithms and Statistical Models Influence Voxel-Based Morphometry (VBM) Results in Amyotrophic Lateral Sclerosis Patients? A Systematic Comparison of Popular VBM Analytical Methods.” *Journal of Magnetic Resonance Imaging* 40 (3): 662–67. https://doi.org/<a href="https://doi.org/10.1002/jmri.24415">https://doi.org/10.1002/jmri.24415</a>.

</div>

<div id="ref-ramos2018retinal" class="csl-entry">

Ramos, Lucı́a, Jorge Novo, José Rouco, Stephanie Romeo, Marı́a D Álvarez, and Marcos Ortega. 2018. “Retinal Vascular Tortuosity Assessment: Inter-Intra Expert Analysis and Correlation with Computational Measurements.” *BMC Medical Research Methodology* 18 (1): 1–11.

</div>

<div id="ref-Rebsamen2020" class="csl-entry">

Rebsamen, Michael, Yannick Suter, Roland Wiest, Mauricio Reyes, and Christian Rummel. 2020. “Brain Morphometry Estimation: From Hours to Seconds Using Deep Learning.” *Frontiers in Neurology* 11. <a href="https://doi.org/10.3389/fneur.2020.00244">https://doi.org/10.3389/fneur.2020.00244</a>.

</div>

<div id="ref-Ronnenberger2015" class="csl-entry">

Ronneberger, Olaf, Philipp Fischer, and Thomas Brox. 2015. “U-Net: Convolutional Networks for Biomedical Image Segmentation.” In *Medical Image Computing and Computer-Assisted Intervention – MICCAI 2015*, edited by Nassir Navab, Joachim Hornegger, William M. Wells, and Alejandro F. Frangi. Springer International Publishing.

</div>

<div id="ref-Rudin2019" class="csl-entry">

Rudin, Cynthia. 2019. “Stop Explaining Black Box Machine Learning Models for High Stakes Decisions and Use Interpretable Models Instead.” *Nature Machine Intelligence* 1 (5): 206–15.

</div>

<div id="ref-shit2021cldice" class="csl-entry">

Shit, Suprosanna, Johannes C Paetzold, Anjany Sekuboyina, et al. 2021. “clDice-a Novel Topology-Preserving Loss Function for Tubular Structure Segmentation.” *Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition*, 16560–69.

</div>

<div id="ref-Simard2003" class="csl-entry">

Simard, P. Y., D. Steinkraus, and J. C. Platt. 2003. “Best Practices for Convolutional Neural Networks Applied to Visual Document Analysis.” *Seventh International Conference on Document Analysis and Recognition, 2003. Proceedings.*, 958–63. <a href="https://doi.org/10.1109/ICDAR.2003.1227801">https://doi.org/10.1109/ICDAR.2003.1227801</a>.

</div>

<div id="ref-Smith2018" class="csl-entry">

Smith, Leslie N. 2018. *A Disciplined Approach to Neural Network Hyper-Parameters: Part 1 – Learning Rate, Batch Size, Momentum, and Weight Decay*. <a href="https://arxiv.org/abs/1803.09820">https://arxiv.org/abs/1803.09820</a>.

</div>

<div id="ref-staal2004ridge" class="csl-entry">

Staal, Joes, Michael D Abràmoff, Meindert Niemeijer, Max A Viergever, and Bram Van Ginneken. 2004. “Ridge-Based Vessel Segmentation in Color Images of the Retina.” *IEEE Transactions on Medical Imaging* 23 (4): 501–9.

</div>

<div id="ref-Tahir2021" class="csl-entry">

Tahir, Waleed, Sreekanth Kura, Jiabei Zhu, et al. 2021. “<span class="nocase">Anatomical Modeling of Brain Vasculature in Two-Photon Microscopy by Generalizable Deep Learning</span>.” *BME Frontiers* 2021: 8620932. <a href="https://doi.org/10.34133/2021/8620932">https://doi.org/10.34133/2021/8620932</a>.

</div>

<div id="ref-Tetteh2020" class="csl-entry">

Tetteh, Giles, Velizar Efremov, Nils D Forkert, et al. 2020. “<span class="nocase">DeepVesselNet: Vessel Segmentation, Centerline Prediction, and Bifurcation Detection in 3-D Angiographic Volumes</span>.” *Frontiers in Neuroscience* 14: 1285. <a href="https://doi.org/10.3389/fnins.2020.592352">https://doi.org/10.3389/fnins.2020.592352</a>.

</div>

<div id="ref-Todorov2020" class="csl-entry">

Todorov, Mihail Ivilinov, Johannes Christian Paetzold, Oliver Schoppe, et al. 2020. “<span class="nocase">Machine learning analysis of whole mouse brain vasculature</span>.” *Nature Methods* 17 (4): 442–49. <a href="https://doi.org/10.1038/s41592-020-0792-1">https://doi.org/10.1038/s41592-020-0792-1</a>.

</div>

<div id="ref-Tongpob2019" class="csl-entry">

Tongpob, Yutthapong, Shushan Xia, Caitlin Wyrwoll, and Andrew Mehnert. 2019. “<span class="nocase">Quantitative characterization of rodent feto-placental vasculature morphology in micro-computed tomography images</span>.” *Computer Methods and Programs in Biomedicine* 179: 104984. <a href="https://doi.org/10.1016/j.cmpb.2019.104984">https://doi.org/10.1016/j.cmpb.2019.104984</a>.

</div>

<div id="ref-Wilson2008" class="csl-entry">

Wilson, Clare M., Kenneth D. Cocker, Merrick J. Moseley, et al. 2008. “<span class="nocase">Computerized analysis of retinal vessel width and tortuosity in premature infants</span>.” *Investigative Ophthalmology and Visual Science* 49 (8): 3577–85. <a href="https://doi.org/10.1167/iovs.07-1353">https://doi.org/10.1167/iovs.07-1353</a>.

</div>

<div id="ref-Xiao2018" class="csl-entry">

Xiao, Xiao, Shen Lian, Zhiming Luo, and Shaozi Li. 2018. “<span class="nocase">Weighted Res-UNet for High-Quality Retina Vessel Segmentation</span>.” *2018 9th International Conference on Information Technology in Medicine and Education (ITME)*, 327–31. <a href="https://doi.org/10.1109/ITME.2018.00080">https://doi.org/10.1109/ITME.2018.00080</a>.

</div>

<div id="ref-Zhang2018" class="csl-entry">

Zhang, Yishuo, and Albert C S Chung. 2018. “<span class="nocase">Deep Supervision with Additional Labels for Retinal Vessel Segmentation Task</span>.” In *Medical Image Computing and Computer Assisted Intervention – MICCAI 2018*, edited by Alejandro F Frangi, Julia A Schnabel, Christos Davatzikos, Carlos Alberola-López, and Gabor Fichtinger. Springer International Publishing.

</div>

<div id="ref-Zhao2018" class="csl-entry">

Zhao, He, Huiqi Li, Sebastian Maurer-Stroh, and Li Cheng. 2018. “Synthesizing Retinal and Neuronal Images with Generative Adversarial Nets.” *Medical Image Analysis* 49: 14–26. https://doi.org/<a href="https://doi.org/10.1016/j.media.2018.07.001">https://doi.org/10.1016/j.media.2018.07.001</a>.

</div>

<div id="ref-Zhao2019" class="csl-entry">

Zhao, He, Huiqi Li, Sebastian Maurer-Stroh, Yuhong Guo, Qiuju Deng, and Li Cheng. 2019. “Supervised Segmentation of Un-Annotated Retinal Fundus Images by Synthesis.” *IEEE Transactions on Medical Imaging* 38 (1): 46–56. <a href="https://doi.org/10.1109/TMI.2018.2854886">https://doi.org/10.1109/TMI.2018.2854886</a>.

</div>

</div>

<div class="footnotes" role="doc-endnotes">
  <ol>
    <li id="fn:1" role="doc-endnote">
      <p>https://image-net.org/ <a href="#fnref:1" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:2" role="doc-endnote">
      <p>Code available at <a href="https://github.com/chcomin/pyvane">https://github.com/chcomin/pyvane</a> <a href="#fnref:2" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:3" role="doc-endnote">
      <p><a href="https://pytorch.org/">https://pytorch.org/</a> <a href="#fnref:3" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:4" role="doc-endnote">
      <p>Average Dice of 0.9405 <a href="#fnref:4" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:5" role="doc-endnote">
      <p>Average Dice of 0.9553 <a href="#fnref:5" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
  </ol>
</div>]]></content><author><name>Matheus V. da Silva</name></author><summary type="html"><![CDATA[Introduction]]></summary></entry><entry><title type="html">Learning Deep Learning</title><link href="https://chcomin.github.io/publications/articles/2022-arruda2022learning/" rel="alternate" type="text/html" title="Learning Deep Learning" /><published>2022-07-14T00:00:00+00:00</published><updated>2022-07-14T00:00:00+00:00</updated><id>https://chcomin.github.io/publications/articles/2022-Arruda2022Learning</id><content type="html" xml:base="https://chcomin.github.io/publications/articles/2022-arruda2022learning/"><![CDATA[]]></content><author><name>Henrique F. De Arruda</name></author><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">Principal Component Analysis: A Natural Approach to Data Exploration</title><link href="https://chcomin.github.io/publications/articles/2022-gewers2022principal/" rel="alternate" type="text/html" title="Principal Component Analysis: A Natural Approach to Data Exploration" /><published>2022-05-31T00:00:00+00:00</published><updated>2022-05-31T00:00:00+00:00</updated><id>https://chcomin.github.io/publications/articles/2022-Gewers2022Principal</id><content type="html" xml:base="https://chcomin.github.io/publications/articles/2022-gewers2022principal/"><![CDATA[]]></content><author><name>Felipe L. Gewers</name></author><summary type="html"><![CDATA[]]></summary></entry></feed>