<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Decoupled Active Contours &#8211; VISION AND IMAGE PROCESSING (VIP) RESEARCH GROUP</title>
	<atom:link href="https://vip.uwaterloo.ca/category/research-demos/decoupled-active-contours/feed/" rel="self" type="application/rss+xml" />
	<link>https://vip.uwaterloo.ca</link>
	<description>The University of Waterloo&#039;s Vision and Image Processing Lab</description>
	<lastBuildDate>Fri, 12 Jan 2024 17:34:47 +0000</lastBuildDate>
	<language>en-CA</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7</generator>

<image>
	<url>https://vip.uwaterloo.ca/wp-content/uploads/2023/04/cropped-favicon-32x32.png</url>
	<title>Decoupled Active Contours &#8211; VISION AND IMAGE PROCESSING (VIP) RESEARCH GROUP</title>
	<link>https://vip.uwaterloo.ca</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Akshaya Mishra</title>
		<link>https://vip.uwaterloo.ca/a-mishra/</link>
		
		<dc:creator><![CDATA[vipadmin]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 18:04:04 +0000</pubDate>
				<category><![CDATA[Alumni]]></category>
		<category><![CDATA[Biomedical Imaging]]></category>
		<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[David Clausi]]></category>
		<category><![CDATA[Decoupled Active Contours]]></category>
		<category><![CDATA[Evolutionary Deep Intelligence]]></category>
		<category><![CDATA[Image Denoising]]></category>
		<category><![CDATA[Image Segmentation/Classification]]></category>
		<category><![CDATA[Paul Fieguth]]></category>
		<category><![CDATA[Ph.D.]]></category>
		<category><![CDATA[Remote Sensing]]></category>
		<category><![CDATA[Video Analysis]]></category>
		<category><![CDATA[Ph.D. Grad Date: 2010]]></category>
		<guid isPermaLink="false">https://wwwvip.uwaterloo.ca/?p=1139</guid>

					<description><![CDATA[Akshaya has been working in the field of image processing, pattern recognition and computer vision for nine years. He has been publishing and serving as an reviewer for several key image processing and computer vision conferences and journals.]]></description>
										<content:encoded><![CDATA[
<p>Akshaya has been working in the field of image processing, pattern recognition and computer vision for nine years. He has been publishing and serving as an reviewer for several key image processing and computer vision conferences and journals.</p>



<p>He has obtained a Master of Technology in Automation and Computer Vision from Indian Institute of Technology, Kharagpur, India and a Ph.D. degree in pattern analysis and machine intelligence from Systems Design Department of University of Waterloo. Prior to starting his Ph.D, Akshaya worked for two years and six months for Read-Ink Technology Pvt. Ltd to develop machine learning and pattern recognition algorithms for online hand written character recognition engine.</p>



<p>After completing his Ph.D. Akshaya worked for one year for Tornado Medical Systems, where he developed algorithms for reconstruction and analysis of Optical Coherence Tomography (OCT) signals. Recently, Akshaya has joined Miovision Technologies Pvt. Ltd to work in the areas of intelligent traffic data analysis and management. Akshaya&#8217;s interest includes but are not limited to document image analysis, medical image reconstruction and analysis with a focus on Optical Coherence Tomography signals, traffic data analysis and management, quantitative image quality assessment and modeling and optimization of data of any kind.</p>



<p>Email: <a href="mailto:akmishra%40engmail.uwaterloo.ca">akmishra@engmail.uwaterloo.ca</a></p>


<div class="lazyblock-supervisors-29TcOj wp-block-lazyblock-supervisors"><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Supervisors</div><a href=https://vip.uwaterloo.ca/d-clausi/>David Clausi</a>, <a href=https://vip.uwaterloo.ca/p-fieguth/>Paul Fieguth</a></div>

<div class="lazyblock-research-Z1KKWed wp-block-lazyblock-research"><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Research topics</div><a href=https://vip.uwaterloo.ca/biomedical-imaging/>Biomedical Imaging</a><br><a href=https://vip.uwaterloo.ca/computer-vision/>Computer Vision</a><br><a href=https://vip.uwaterloo.ca/evolutionary-deep-intelligence/>Evolutionary Deep Intelligence</a><br><a href=https://vip.uwaterloo.ca/image-segmentation-classification/>Image Segmentation/Classification</a><br><a href=https://vip.uwaterloo.ca/remote-sensing/>Remote Sensing</a><br><a href=https://vip.uwaterloo.ca/video-analysis/>Video Analysis</a><br><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Research demos</div><a href=https://vip.uwaterloo.ca/decoupled-active-contours/>Decoupled Active Contours</a><br><a href=https://vip.uwaterloo.ca/image-denoising/>Image Denoising</a><br></div>

<div class="lazyblock-publications-ZPjI8k wp-block-lazyblock-publications"><meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet">
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js"></script>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Serif+Pro">

  <!-- Load external CSS styles -->
  <link rel="stylesheet" href="../stylesbootstrap.css">

<style>

#peoplePublications {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    font-weight: bold;
    font-size: 3rem;
    text-align: start;
    margin-bottom: 0.6em;
}

#peoplePublications ~ span {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    font-weight: bold;
    font-size: 1.75rem;
    text-align: start;
    margin-bottom: 0.5em;
}

#nav {
    text-align: start;
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    margin-bottom: 0.5em;
    margin-left: 0;
    padding-left: 0;
}

#nav a {
    text-decoration-line: underline;
}

#nav a:hover {
    text-decoration-line: none;
}

#mainContent {
    max-width: 100%;
}

#pubDataJournals {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    padding-left: 0;
    font-size: 1.75rem;
    white-space: pre-wrap;
}

#pubDataConference {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    padding-left: 0;
    font-size: 1.75rem;
    white-space: pre-wrap;
}
</style>

  <!--Main Content-->
  <div class="container mt-5" id="mainContent">
  
   <div class="row">
      <div class="col ps-0" id="peoplePublications">Publications</div>
      <div id="nav">
        <a href="#journalArticles">Journal Articles</a>
        <span> / </span>
        <a href="#conferencePapers">Conference Papers</a>
      </div>
      <span id="journalArticles" class="ps-0">Journal Articles</span>
      <p id="pubDataJournals">
        <!-- journal data from JS here -->
      </p>
      <span id="conferencePapers" class="ps-0">Conference Papers</span>
      <div id="nav">
        <a href="#peoplePublications">Top</a>
      </div>
      <p id="pubDataConference">
        <!-- conference paper data from JS here -->
      </p>
    </div>
  </div>

<script>
	  let pubDataJournals = "";
	  let pubDataConference = "";
    let publications = [];
    const apiID = "https://ecserv2.uwaterloo.ca/researchmicro/research/reverseauthor.php?scopus_id="
    const api = "https://ecserv2.uwaterloo.ca/researchmicro/research/publications.php?user=";
    const openAccess = "https://bg.api.oa.works/find?id=";
    let userID;
    getNexus(24830617000);

    async function getNexus(scopusID)
    {
        let userInfo = await fetch(apiID+scopusID);
        let userInfoText = await userInfo.text();
        if(userInfoText == "Sorry, you do not have a Scopus ID assigned")
        {
          document.getElementById('peoplePublications').style.display = "none";
          document.querySelectorAll('[id="nav"]')[0].style.display = "none";
          document.querySelectorAll('[id="nav"]')[1].style.display = "none";
          document.getElementById('journalArticles').style.display = "none";
          document.getElementById('conferencePapers').style.display = "none";
          document.getElementById('pubDataJournals').style.display = "none";
          document.getElementById('pubDataConference').style.display = "none";
        }
        else
        {
          userID = JSON.parse(userInfoText).rows.nexus;
          displayPublications();
        }
    }

    async function getOA(searchQuery)
    {
        let openInfo = await fetch(openAccess + searchQuery);
        let openInfoText = await openInfo.text();
        return JSON.parse(openInfoText).url;
    }

    async function getPublications(file) {
        let publicationData = await fetch(file);
        let pubText = await publicationData.text();
        pubText = pubText.replace("=", ":"); //correcting API issue with = instead of :
        return JSON.parse(pubText);
    }

    function generateLink(id, title)
    {
        id.onclick = "";
        title = title.replaceAll(/ /g, '%20');
        id.innerHTML = "loading..."
        getOA(title).then(
            function(value)
            {
                if(value == null)
                {
                    id.innerHTML = "Search UWaterloo Library";
                    id.href = 'https://ocul-wtl.primo.exlibrisgroup.com/discovery/search?query=any,contains,' + title + '&tab=OCULDiscoveryNetwork&search_scope=OCULDiscoveryNetwork&vid=01OCUL_WTL:WTL_DEFAULT&lang=en&offset=0';
                    id.target = "_blank";
                }
                else
                {
                    id.href = value;
                    id.target = "_blank";
                    id.innerHTML = "Open";
                }
            },
            function(error)
            {
                id.href = "#";
                id.innerHTML = "Not found";
            });
    }

    function isConference(publication)
    {
    	return publication.volume == 0 || publication.pub_name.includes("Conference") || publication.pub_name.includes("Proceedings") || publication.pub_name.includes("Lecture Notes") || publication.pub_name.includes("Symposium");
   	}

   function displayPublications() {
	    getPublications(api+userID).then(
            function(value) {
                const size = value.rows.length;
                let pubListJournals = "";
                let pubListConference = "";
                for(var i = 0; i < size; i++)
                            {
                                let publication = "";
                                let authors = value.rows[i].list_names_of_authors.split(", ");
                                lastIndex = authors.length - 1;
                                authors[lastIndex] = authors[lastIndex].slice(4, authors[lastIndex].length - 1);
                                let possibleSupervisors = ["Clausi D.", "Fieguth P.W.", "Fieguth P.", "Wong A.", "Zelek J.", "Xu L.", "Scott A.", "Rambhatla S.", "Lee J.", "Chen Y.", "Shafiee M.J."];
                                if(authors.some(r=>possibleSupervisors.includes(r)))
                                {
                                for(var j = 0; j <= lastIndex; j++)
                                {  
                                    let authorLink = "";
                                    let authorsLC = authors[j].toLowerCase();
                                    if(j == lastIndex)
                                    {
                                        if(authorsLC.includes("."))
                                        {  
                                            authorLink += authorsLC.charAt(authorsLC.indexOf(".") - 1);
                                            authorLink += "-";
                                            authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        }
                                        else
                                        {
                                            authorLink += authorsLC.charAt(authorsLC.length - 1);
                                            authorLink += "-";
                                            authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        }
                                        
                                    }
                                    else
                                    {
                                        authorLink += authorsLC.charAt(authorsLC.indexOf(".") - 1);
                                        authorLink += "-";
                                        authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        
                                    }
                                    authorLink = 'https://vip.uwaterloo.ca/' + authorLink;
                                    if(j != lastIndex)
                                    {
                                        publication += `<a href='${authorLink}' target='_blank'>${authors[j]}</a>` + ", ";
                                    }
                                    else 
                                    {
                                        publication += "and " + `<a href='${authorLink}' target='_blank'>${authors[j]}</a>`;
                                    }
                                }

                                publication += ', "';
                                
                                publication += value.rows[i].title;
                                
                                publication += '", ';
                                publication += value.rows[i].pub_name;
                                if (!isConference(value.rows[i]))
                                {
                                    publication += ", vol. ";
                                    publication += value.rows[i].volume;
                                    publication += ", ";
                                }
                                if (value.rows[i].page_range != "" && !isConference(value.rows[i]))
                                {
                                    publication += "pp. ";
                                    publication += value.rows[i].page_range;
                                    publication += ", ";
                                }
                                else if(isConference(value.rows[i]))
                                {
                                    publication += ", ";
                                }
                                publication += value.rows[i].year;
                                publication += ". ";
                                publication += `<a href="#" onclick="generateLink(this, '${value.rows[i].title}');event.preventDefault();">Get it here.</a>`;
                                
                                publication += "\n\n";
                                if (isConference(value.rows[i]))
                                {
                                    pubListConference += publication;
                                }
                                else
                                {
                                      pubListJournals += publication;
                                }
                                }
                            }
                document.getElementById('pubDataJournals').innerHTML = pubListJournals;
                document.getElementById('pubDataConference').innerHTML = pubListConference;
                if(pubListConference == "")
                {
                   document.getElementById('conferencePapers').style.display = "none";
                }
                if(pubListJournals == "")
                {
                  document.getElementById('journalArticles').style.display = "none";
                }
            },
            function(error) {document.getElementById('pubDataJournals').innerHTML = "Error retrieving data.";}
        )
    }

   
</script></div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Bi Hongbo</title>
		<link>https://vip.uwaterloo.ca/b-hongbo/</link>
		
		<dc:creator><![CDATA[Bi Hongbo]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 17:17:57 +0000</pubDate>
				<category><![CDATA[Action Recognition in Video]]></category>
		<category><![CDATA[Alumni]]></category>
		<category><![CDATA[Compressed Sensing]]></category>
		<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[David Clausi]]></category>
		<category><![CDATA[Decoupled Active Contours]]></category>
		<category><![CDATA[Multiresolution Techniques]]></category>
		<category><![CDATA[Paul Fieguth]]></category>
		<category><![CDATA[PDF]]></category>
		<category><![CDATA[Statistical Textural Distinctiveness for Salient Region Detection in Natural Images]]></category>
		<category><![CDATA[Stochastic Models]]></category>
		<category><![CDATA[PDF Grad Date: 2015]]></category>
		<guid isPermaLink="false">https://wwwvip.uwaterloo.ca/?p=1089</guid>

					<description><![CDATA[My research interests are in the fields of digital watermarking, signal processing, pattern recognition and related fields. I am currently particularly interested in statistical modeling and feature extraction of natural images.]]></description>
										<content:encoded><![CDATA[
<p>I am a visiting researcher in the Vision and Image Processing Lab. I collaborate with professor&nbsp;David Clausi, professor Paul Fieguth, Post Doctoral Fellow (PDF) Christian Scharfenberger and Ph.D.&nbsp;Ahmed Gawish&nbsp;in the areas of image processing and digital watermarking.</p>


<div class="lazyblock-supervisors-Z1SNtef wp-block-lazyblock-supervisors"><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Supervisors</div><a href=https://vip.uwaterloo.ca/d-clausi/>David Clausi</a>, <a href=https://vip.uwaterloo.ca/p-fieguth/>Paul Fieguth</a></div>

<div class="lazyblock-research-interests-Z1c6xlP wp-block-lazyblock-research-interests"><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Research interests</div>My research interests are in the fields of digital watermarking, signal processing, pattern recognition and related fields. I am currently particularly interested in statistical modeling and feature extraction of natural images.</div>

<div class="lazyblock-research-16uhne wp-block-lazyblock-research"><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Research topics</div><a href=https://vip.uwaterloo.ca/computer-vision/>Computer Vision</a><br><a href=https://vip.uwaterloo.ca/multiresolution-techniques/>Multiresolution Techniques</a><br><a href=https://vip.uwaterloo.ca/stochastic-models/>Stochastic Models</a><br><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Research demos</div><a href=https://vip.uwaterloo.ca/action-recognition-in-video/>Action Recognition in Video</a><br><a href=https://vip.uwaterloo.ca/compressed-sensing/>Compressed Sensing</a><br><a href=https://vip.uwaterloo.ca/decoupled-active-contours/>Decoupled Active Contours</a><br><a href=https://vip.uwaterloo.ca/statistical-textural-distinctiveness-for-salient-region-detection-in-natural-images/>Statistical Textural Distinctiveness for Salient Region Detection in Natural Images</a><br></div>

<div class="lazyblock-publications-Z1WeHso wp-block-lazyblock-publications"><meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet">
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js"></script>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Serif+Pro">

  <!-- Load external CSS styles -->
  <link rel="stylesheet" href="../stylesbootstrap.css">

<style>

#peoplePublications {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    font-weight: bold;
    font-size: 3rem;
    text-align: start;
    margin-bottom: 0.6em;
}

#peoplePublications ~ span {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    font-weight: bold;
    font-size: 1.75rem;
    text-align: start;
    margin-bottom: 0.5em;
}

#nav {
    text-align: start;
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    margin-bottom: 0.5em;
    margin-left: 0;
    padding-left: 0;
}

#nav a {
    text-decoration-line: underline;
}

#nav a:hover {
    text-decoration-line: none;
}

#mainContent {
    max-width: 100%;
}

#pubDataJournals {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    padding-left: 0;
    font-size: 1.75rem;
    white-space: pre-wrap;
}

#pubDataConference {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    padding-left: 0;
    font-size: 1.75rem;
    white-space: pre-wrap;
}
</style>

  <!--Main Content-->
  <div class="container mt-5" id="mainContent">
  
   <div class="row">
      <div class="col ps-0" id="peoplePublications">Publications</div>
      <div id="nav">
        <a href="#journalArticles">Journal Articles</a>
        <span> / </span>
        <a href="#conferencePapers">Conference Papers</a>
      </div>
      <span id="journalArticles" class="ps-0">Journal Articles</span>
      <p id="pubDataJournals">
        <!-- journal data from JS here -->
      </p>
      <span id="conferencePapers" class="ps-0">Conference Papers</span>
      <div id="nav">
        <a href="#peoplePublications">Top</a>
      </div>
      <p id="pubDataConference">
        <!-- conference paper data from JS here -->
      </p>
    </div>
  </div>

<script>
	  let pubDataJournals = "";
	  let pubDataConference = "";
    let publications = [];
    const apiID = "https://ecserv2.uwaterloo.ca/researchmicro/research/reverseauthor.php?scopus_id="
    const api = "https://ecserv2.uwaterloo.ca/researchmicro/research/publications.php?user=";
    const openAccess = "https://bg.api.oa.works/find?id=";
    let userID;
    getNexus();

    async function getNexus(scopusID)
    {
        let userInfo = await fetch(apiID+scopusID);
        let userInfoText = await userInfo.text();
        if(userInfoText == "Sorry, you do not have a Scopus ID assigned")
        {
          document.getElementById('peoplePublications').style.display = "none";
          document.querySelectorAll('[id="nav"]')[0].style.display = "none";
          document.querySelectorAll('[id="nav"]')[1].style.display = "none";
          document.getElementById('journalArticles').style.display = "none";
          document.getElementById('conferencePapers').style.display = "none";
          document.getElementById('pubDataJournals').style.display = "none";
          document.getElementById('pubDataConference').style.display = "none";
        }
        else
        {
          userID = JSON.parse(userInfoText).rows.nexus;
          displayPublications();
        }
    }

    async function getOA(searchQuery)
    {
        let openInfo = await fetch(openAccess + searchQuery);
        let openInfoText = await openInfo.text();
        return JSON.parse(openInfoText).url;
    }

    async function getPublications(file) {
        let publicationData = await fetch(file);
        let pubText = await publicationData.text();
        pubText = pubText.replace("=", ":"); //correcting API issue with = instead of :
        return JSON.parse(pubText);
    }

    function generateLink(id, title)
    {
        id.onclick = "";
        title = title.replaceAll(/ /g, '%20');
        id.innerHTML = "loading..."
        getOA(title).then(
            function(value)
            {
                if(value == null)
                {
                    id.innerHTML = "Search UWaterloo Library";
                    id.href = 'https://ocul-wtl.primo.exlibrisgroup.com/discovery/search?query=any,contains,' + title + '&tab=OCULDiscoveryNetwork&search_scope=OCULDiscoveryNetwork&vid=01OCUL_WTL:WTL_DEFAULT&lang=en&offset=0';
                    id.target = "_blank";
                }
                else
                {
                    id.href = value;
                    id.target = "_blank";
                    id.innerHTML = "Open";
                }
            },
            function(error)
            {
                id.href = "#";
                id.innerHTML = "Not found";
            });
    }

    function isConference(publication)
    {
    	return publication.volume == 0 || publication.pub_name.includes("Conference") || publication.pub_name.includes("Proceedings") || publication.pub_name.includes("Lecture Notes") || publication.pub_name.includes("Symposium");
   	}

   function displayPublications() {
	    getPublications(api+userID).then(
            function(value) {
                const size = value.rows.length;
                let pubListJournals = "";
                let pubListConference = "";
                for(var i = 0; i < size; i++)
                            {
                                let publication = "";
                                let authors = value.rows[i].list_names_of_authors.split(", ");
                                lastIndex = authors.length - 1;
                                authors[lastIndex] = authors[lastIndex].slice(4, authors[lastIndex].length - 1);
                                let possibleSupervisors = ["Clausi D.", "Fieguth P.W.", "Fieguth P.", "Wong A.", "Zelek J.", "Xu L.", "Scott A.", "Rambhatla S.", "Lee J.", "Chen Y.", "Shafiee M.J."];
                                if(authors.some(r=>possibleSupervisors.includes(r)))
                                {
                                for(var j = 0; j <= lastIndex; j++)
                                {  
                                    let authorLink = "";
                                    let authorsLC = authors[j].toLowerCase();
                                    if(j == lastIndex)
                                    {
                                        if(authorsLC.includes("."))
                                        {  
                                            authorLink += authorsLC.charAt(authorsLC.indexOf(".") - 1);
                                            authorLink += "-";
                                            authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        }
                                        else
                                        {
                                            authorLink += authorsLC.charAt(authorsLC.length - 1);
                                            authorLink += "-";
                                            authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        }
                                        
                                    }
                                    else
                                    {
                                        authorLink += authorsLC.charAt(authorsLC.indexOf(".") - 1);
                                        authorLink += "-";
                                        authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        
                                    }
                                    authorLink = 'https://vip.uwaterloo.ca/' + authorLink;
                                    if(j != lastIndex)
                                    {
                                        publication += `<a href='${authorLink}' target='_blank'>${authors[j]}</a>` + ", ";
                                    }
                                    else 
                                    {
                                        publication += "and " + `<a href='${authorLink}' target='_blank'>${authors[j]}</a>`;
                                    }
                                }

                                publication += ', "';
                                
                                publication += value.rows[i].title;
                                
                                publication += '", ';
                                publication += value.rows[i].pub_name;
                                if (!isConference(value.rows[i]))
                                {
                                    publication += ", vol. ";
                                    publication += value.rows[i].volume;
                                    publication += ", ";
                                }
                                if (value.rows[i].page_range != "" && !isConference(value.rows[i]))
                                {
                                    publication += "pp. ";
                                    publication += value.rows[i].page_range;
                                    publication += ", ";
                                }
                                else if(isConference(value.rows[i]))
                                {
                                    publication += ", ";
                                }
                                publication += value.rows[i].year;
                                publication += ". ";
                                publication += `<a href="#" onclick="generateLink(this, '${value.rows[i].title}');event.preventDefault();">Get it here.</a>`;
                                
                                publication += "\n\n";
                                if (isConference(value.rows[i]))
                                {
                                    pubListConference += publication;
                                }
                                else
                                {
                                      pubListJournals += publication;
                                }
                                }
                            }
                document.getElementById('pubDataJournals').innerHTML = pubListJournals;
                document.getElementById('pubDataConference').innerHTML = pubListConference;
                if(pubListConference == "")
                {
                   document.getElementById('conferencePapers').style.display = "none";
                }
                if(pubListJournals == "")
                {
                  document.getElementById('journalArticles').style.display = "none";
                }
            },
            function(error) {document.getElementById('pubDataJournals').innerHTML = "Error retrieving data.";}
        )
    }

   
</script></div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Decoupled Active Contours</title>
		<link>https://vip.uwaterloo.ca/decoupled-active-contours/</link>
		
		<dc:creator><![CDATA[vipadmin]]></dc:creator>
		<pubDate>Mon, 20 Mar 2023 20:34:25 +0000</pubDate>
				<category><![CDATA[Decoupled Active Contours]]></category>
		<category><![CDATA[Research Demos]]></category>
		<guid isPermaLink="false">https://wwwvip.uwaterloo.ca/?p=919</guid>

					<description><![CDATA[The accurate detection of object boundaries via active contours is an ongoing research topic in computer vision. Most active contours converge towards some desired contour by minimizing a sum of internal (prior) and external (image measurement) energy terms. Such an approach is elegant, but suffers from a slow convergence rate and frequently mis-converges in the presence of noise or complex contours. To address these limitations, a decoupled active contour (DAC) is developed which applies the two energy terms separately.]]></description>
										<content:encoded><![CDATA[
<p>The accurate detection of object boundaries via active contours is an ongoing research topic in computer vision. Most active contours converge towards some desired contour by minimizing a sum of internal (prior) and external (image measurement) energy terms. Such an approach is elegant, but suffers from a slow convergence rate and frequently mis-converges in the presence of noise or complex contours. To address these limitations, a decoupled active contour (DAC) is developed which applies the two energy terms separately. Essentially, the DAC consists of a measurement update step, employing a Hidden Markov Model (HMM) and Viterbi search, and then a separate prior step, which modifies the updated curve based on the relative strengths of the measurement uncertainty and the non-stationary prior. By separating the measurement and prior steps, the algorithm is less likely to mis-converge; furthermore, the use of a Viterbi optimizer allows the method to converge far more rapidly than energy-based iterative solvers. The results clearly demonstrate that the proposed approach is robust to noise, can capture regions of very high curvature, and exhibits limited dependence on contour initialization or parameter settings. Compared to five other published methods and across many image sets, the DAC is found to be faster with better or comparable segmentation accuracy.</p>



<h2 class="wp-block-heading">Finding the visual boundary using the Viterbi search</h2>



<p class="has-text-align-center"><img fetchpriority="high" decoding="async" height="227" width="250" src="https://uwaterloo.ca/vision-image-processing-lab/sites/ca.vision-image-processing-lab/files/resize/styles/body-500px-wide/public/uploads/images/viterbisearch-250x227.png?itok=zM5E26CD" alt="Image showing action of the Viterbi algorithm"></p>



<p>The &#8220;visual boundary estimation&#8221; problem is formulated as a shortest path finding puzzle on a discrete trellis. Viterbi search algorithm is employed to find the shortest path.</p>



<p>Circular trellis with an initial snake (blue circle), one possible, albeit unlikely snake (magenta), normals (green lines) and nodes (small circles along the normals)</p>



<h2 class="wp-block-heading">Generation of non-stationary prior via importance sampling</h2>



<p>To capture high curvature more samples are placed near high curvature to lower the penalty on curvature. The curvature guided importance sampling method is demonstrated below:</p>



<figure class="wp-block-image aligncenter"><img decoding="async" src="https://uwaterloo.ca/vision-image-processing-lab/sites/ca.vision-image-processing-lab/files/styles/body-500px-wide/public/uploads/images/importancesamplingmethod.png?itok=k6lTcJdw" alt="Figure showing curvature guided importance sampling method"/></figure>



<h2 class="wp-block-heading">Statistical data fusion</h2>



<p>The non-stationary prior is fused with measured boundary using a&nbsp;Linear Baysian estimation formulation. The effect measurement uncertainties is demonstrated below:</p>



<figure class="wp-block-image aligncenter"><img decoding="async" src="https://uwaterloo.ca/vision-image-processing-lab/sites/ca.vision-image-processing-lab/files/styles/body-500px-wide/public/uploads/images/statisticaldatafusion.png?itok=6ZlXGT4B" alt="Figure showing Statistical Data Fusion Measurement Uncertainties"/></figure>



<h4 class="wp-block-heading"><strong>Downloads</strong></h4>



<div class="wp-block-file"><a id="wp-block-file--media-2f8cceb8-be92-4cd9-8d6a-75417b27e78c" href="https://vip.uwaterloo.ca/wp-content/uploads/2023/03/decoupled_active_contour_dac_for_boundary_detection_0-1.pdf">Decouple Active Contour for Boundary Detection.pdf</a></div>



<h4 class="wp-block-heading has-source-serif-pro-font-family"><strong>Related people</strong></h4>



<h5 class="wp-block-heading has-source-serif-pro-font-family" style="text-transform:capitalize"><strong>Directors</strong></h5>


<div class="lazyblock-related-people-L7NS9 wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/p-fieguth/>Paul Fieguth</a>, <a href=https://vip.uwaterloo.ca/d-clausi/>David Clausi</a></p></div>


<h5 class="wp-block-heading has-source-serif-pro-font-family" style="text-transform:capitalize">Students</h5>


<div class="lazyblock-related-people-Z1bIKEK wp-block-lazyblock-related-people"><p>
  </p></div>


<h5 class="wp-block-heading has-source-serif-pro-font-family" style="text-transform:capitalize"><strong>Alumni</strong></h5>


<div class="lazyblock-related-people-1gwTTy wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/a-mishra/>Akshaya Mishra</a>, <a href=https://vip.uwaterloo.ca/b-hongbo/>Bi Hongbo</a></p></div>


<h4 class="wp-block-heading"><strong>Related research areas</strong></h4>



<p><a href="https://vip.uwaterloo.ca/image-segmentation-classification/" data-type="post" data-id="792">Image Segmentation/Classification</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Paul Fieguth</title>
		<link>https://vip.uwaterloo.ca/p-fieguth/</link>
		
		<dc:creator><![CDATA[Paul Fieguth]]></dc:creator>
		<pubDate>Thu, 23 Feb 2023 20:12:37 +0000</pubDate>
				<category><![CDATA[3D Reconstruction of Underwater Scenes]]></category>
		<category><![CDATA[Biomedical Imaging]]></category>
		<category><![CDATA[BIOSCAN Insect Biodiversity Assessment]]></category>
		<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[Decoupled Active Contours]]></category>
		<category><![CDATA[Directors]]></category>
		<category><![CDATA[Image Denoising]]></category>
		<category><![CDATA[Image Segmentation/Classification]]></category>
		<category><![CDATA[Multiresolution Techniques]]></category>
		<category><![CDATA[People]]></category>
		<category><![CDATA[Porous Media]]></category>
		<category><![CDATA[Remote Sensing]]></category>
		<category><![CDATA[SAR Sea Ice Image Synthesis]]></category>
		<category><![CDATA[Scientific Imaging]]></category>
		<category><![CDATA[Skin Cancer Detection]]></category>
		<category><![CDATA[Stochastic Models]]></category>
		<category><![CDATA[Texture Classification]]></category>
		<category><![CDATA[Video Analysis]]></category>
		<category><![CDATA[VIP VPA dataset]]></category>
		<guid isPermaLink="false">https://wwwvip.uwaterloo.ca/?p=452</guid>

					<description><![CDATA[My research interests are in the area of accelerated computational methods applied to large statistical problems in image processing, computer vision, and remote sensing.]]></description>
										<content:encoded><![CDATA[
<p>Paul Fieguth received his B.A.Sc. degree from the University of Waterloo, Ontario, Canada, in 1991 and his Ph.D. degree from the Massachusetts Institute of Technology, Cambridge, in 1995, both degrees in electrical engineering. He joined the faculty at the University of Waterloo in 1996, where he is currently Professor and, since 2010, Department Chair in Systems Design Engineering.  He has held visiting appointments at the University of Heidelberg in Germany, at INRIA/Sophia in France, at the Cambridge Research Laboratory in Boston, at Oxford University and the Rutherford Appleton Laboratory in England, and with postdoctoral positions in Computer Science at the  University of Toronto and in Information and Decision Systems at MIT.</p>



<h2 class="wp-block-heading"><strong>Students</strong></h2>



<h3 class="wp-block-heading"><strong>Supervision &#8211; Current</strong></h3>



<h4 class="wp-block-heading"><strong>PDF</strong></h4>


<div class="lazyblock-related-people-28FOiG wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/amir-nazemi/>Amir Nazemi</a></p></div>


<h4 class="wp-block-heading" style="text-transform:capitalize"><strong>ph.D.</strong></h4>


<div class="lazyblock-related-people-Z2vQEjB wp-block-lazyblock-related-people"><p>
  </p></div>


<h4 class="wp-block-heading" style="text-transform:capitalize"><strong>M.A.Sc.</strong></h4>


<div class="lazyblock-related-people-N4xlt wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/soyeon-jang/>Soyeon Jang</a> ()</p></div>


<h3 class="wp-block-heading"><strong>Supervision &#8211; Completed</strong></h3>



<h4 class="wp-block-heading"><strong>PDF</strong></h4>


<div class="lazyblock-related-people-Z1XXJPz wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/zahra-gharaee/>Zahra Gharaee</a> (2024), <a href=https://vip.uwaterloo.ca/amir-nazemi/>Amir Nazemi</a> (), <a href=https://vip.uwaterloo.ca/b-hongbo/>Bi Hongbo</a> (2015)</p></div>


<h4 class="wp-block-heading" style="text-transform:capitalize"><strong>ph.D.</strong></h4>


<div class="lazyblock-related-people-Z2plEFS wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/j-park/>Jinman (Eddie) Park</a> (2025), <a href=https://vip.uwaterloo.ca/n-pellegrino/>Nicholas Pellegrino</a> (2025), <a href=https://vip.uwaterloo.ca/a-chung/>Audrey Chung</a> (2020), <a href=https://vip.uwaterloo.ca/i-kennedy/>Ian Kennedy</a> (2019), <a href=https://vip.uwaterloo.ca/a-carrington/>Andre Carrington</a> (2018), <a href=https://vip.uwaterloo.ca/e-barshan/>Elnaz Barshan</a> (2016), <a href=https://vip.uwaterloo.ca/k-kasiri/>Keyvan Kasiri</a> (2016), <a href=https://vip.uwaterloo.ca/a-gawish/>Ahmed Gawish</a> (2015), <a href=https://vip.uwaterloo.ca/j-liu/>Jiange Grace Liu</a> (2015), <a href=https://vip.uwaterloo.ca/j-eichel/>Justin Eichel</a> (2013), <a href=https://vip.uwaterloo.ca/c-liu/>Chenyi Liu</a> (2012), <a href=https://vip.uwaterloo.ca/y-liu/>Ying Liu</a> (2011), <a href=https://vip.uwaterloo.ca/l-liu/>Li Liu</a> (2011), <a href=https://vip.uwaterloo.ca/a-mishra/>Akshaya Mishra</a> (2010), <a href=https://vip.uwaterloo.ca/a-mohebi/>Azadeh Mohebi</a> (2009), <a href=https://vip.uwaterloo.ca/n-kachouie/>Nezam Kachouie</a> (2008), <a href=https://vip.uwaterloo.ca/s-wesolkowski/>Slawo Wesolkowski</a> (2007), <a href=https://vip.uwaterloo.ca/s-alexander/>Simon Alexander</a> (2005), <a href=https://vip.uwaterloo.ca/z-azimifar/>Zohreh Azimifar</a> (2005), <a href=https://vip.uwaterloo.ca/l-lee/>Leo Jingyu Lee</a> (2004), <a href=https://vip.uwaterloo.ca/f-jin/>Fu Jin</a> (2004), <a href=https://vip.uwaterloo.ca/f-khellah/>Fakhry Khellah</a> (2001), <a href=https://vip.uwaterloo.ca/s-sinha/>Sunil Sinha</a> (2000), <a href=https://vip.uwaterloo.ca/g-carballo/>Gabriel Carballo</a> (1999), <a href=https://vip.uwaterloo.ca/amir-nazemi/>Amir Nazemi</a> ()</p></div>


<h4 class="wp-block-heading" style="text-transform:capitalize"><strong>M.A.Sc.</strong></h4>


<div class="lazyblock-related-people-Z2sdprk wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/auguste-l-w-koh/>Auguste L. W. Koh</a> (2024), <a href=https://vip.uwaterloo.ca/n-pellegrino-1/>Nicholas Pellegrino</a> (2022), <a href=https://vip.uwaterloo.ca/x-hu/>Xiaodan (Charlotte) Hu</a> (2019), <a href=https://vip.uwaterloo.ca/v-sankar/>Vignesh Sankar</a> (2018), <a href=https://vip.uwaterloo.ca/a-kumar/>Abhishek Kumar</a> (2012), <a href=https://vip.uwaterloo.ca/a-jain/>Aanchal Jain</a> (2012), <a href=https://vip.uwaterloo.ca/w-campaigne/>Wesley Campaigne</a> (2012), <a href=https://vip.uwaterloo.ca/n-cavan/>Neil Cavan</a> (2011), <a href=https://vip.uwaterloo.ca/s-zaboli/>Shiva Zaboli</a> (2011), <a href=https://vip.uwaterloo.ca/k-mcbride/>Kurtis McBride</a> (2007)</p></div>

<div class="lazyblock-research-vthYs wp-block-lazyblock-research"><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Research topics</div><a href=https://vip.uwaterloo.ca/biomedical-imaging/>Biomedical Imaging</a><br><a href=https://vip.uwaterloo.ca/bioscan-insect-biodiversity-assessment/>BIOSCAN Insect Biodiversity Assessment</a><br><a href=https://vip.uwaterloo.ca/computer-vision/>Computer Vision</a><br><a href=https://vip.uwaterloo.ca/image-segmentation-classification/>Image Segmentation/Classification</a><br><a href=https://vip.uwaterloo.ca/multiresolution-techniques/>Multiresolution Techniques</a><br><a href=https://vip.uwaterloo.ca/remote-sensing/>Remote Sensing</a><br><a href=https://vip.uwaterloo.ca/scientific-imaging/>Scientific Imaging</a><br><a href=https://vip.uwaterloo.ca/stochastic-models/>Stochastic Models</a><br><a href=https://vip.uwaterloo.ca/video-analysis/>Video Analysis</a><br><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Research demos</div><a href=https://vip.uwaterloo.ca/3d-reconstruction-of-underwater-scenes/>3D Reconstruction of Underwater Scenes</a><br><a href=https://vip.uwaterloo.ca/decoupled-active-contours/>Decoupled Active Contours</a><br><a href=https://vip.uwaterloo.ca/image-denoising/>Image Denoising</a><br><a href=https://vip.uwaterloo.ca/porous-media/>Porous Media</a><br><a href=https://vip.uwaterloo.ca/sar-sea-ice-image-synthesis/>SAR Sea Ice Image Synthesis</a><br><a href=https://vip.uwaterloo.ca/skin-cancer-detection/>Skin Cancer Detection</a><br><a href=https://vip.uwaterloo.ca/texture-classification/>Texture Classification</a><br></div>


<meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet">
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js"></script>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Serif+Pro">

  <!-- Load external CSS styles -->
  <link rel="stylesheet" href="../stylesbootstrap.css">

<style>

#peoplePublications {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    font-weight: bold;
    font-size: 3rem;
    text-align: start;
    margin-bottom: 0.6em;
}

#peoplePublications ~ span {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    font-weight: bold;
    font-size: 1.75rem;
    text-align: start;
    margin-bottom: 0.5em;
}

#nav {
    text-align: start;
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    margin-bottom: 0.5em;
    margin-left: 0;
    padding-left: 0;
}

#nav a {
    text-decoration-line: underline;
}

#nav a:hover {
    text-decoration-line: none;
}

#mainContent {
    max-width: 100%;
}

#pubDataJournals {
   font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    padding-left: 0;
    font-size: 1.75rem;
    white-space: pre-wrap;
}

#pubDataConference {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    padding-left: 0;
    font-size: 1.75rem;
    white-space: pre-wrap;
}
</style>

  <!--Main Content-->
  <div class="container mt-5" id="mainContent">
  
   <div class="row">
      <div class="col ps-0" id="peoplePublications">Publications</div>
      <div id="nav">
        <a href="#journalArticles">Journal Articles</a>
        <span> / </span>
        <a href="#conferencePapers">Conference Papers</a>
      </div>
      <span id="journalArticles" class="ps-0">Journal Articles</span>
      <p id="pubDataJournals">
        <!-- journal data from JS here -->
      </p>
      <span id="conferencePapers" class="ps-0">Conference Papers</span>
      <div id="nav">
        <a href="#peoplePublications">Top</a>
      </div>
      <p id="pubDataConference">
        <!-- conference paper data from JS here -->
      </p>
    </div>
  </div>

<script>
    
    const scopusID = 7004156748; //Paul Fieguth
    const user = "pfieguth";
    const api = "https://ecserv2.uwaterloo.ca/researchmicro/research/publications.php?user=" +user;
   const openAccess = "https://bg.api.oa.works/find?id=";
    
    displayPublications();

   async function getOA(searchQuery)
    {
        let openInfo = await fetch(openAccess + searchQuery);
        let openInfoText = await openInfo.text();
        return JSON.parse(openInfoText).url;
    }

    async function getPublications(file) {
        let publicationData = await fetch(file);
        let pubText = await publicationData.text();
        pubText = pubText.replace("=", ":"); //correcting API issue with = instead of :
        return JSON.parse(pubText);
    }

    function generateLink(id, title)
    {
        id.onclick = "";
        id.innerHTML = "loading..."
        title = title.replaceAll(/ /g, '%20');
        getOA(title).then(
            function(value)
            {
                if(value == null)
                {
                    id.innerHTML = "Search UWaterloo Library";
                    id.href = 'https://ocul-wtl.primo.exlibrisgroup.com/discovery/search?query=any,contains,' + title + '&tab=OCULDiscoveryNetwork&search_scope=OCULDiscoveryNetwork&vid=01OCUL_WTL:WTL_DEFAULT&lang=en&offset=0';
                    id.target = "_blank";
                }
                else
                {
                    id.href = value;
                    id.target = "_blank";
                    id.innerHTML = "Open";
                }
            },
            function(error)
            {
                id.href = "#";
                id.innerHTML = "Not found";
            });
    }

    function displayPublications() {
	    getPublications(api).then(
            function(value) {
                const size = value.rows.length;
                let pubListJournals = "";
                let pubListConference = "";
                for(var i = 0; i < size; i++)
                            {
                                let publication = "";
                                let authors = value.rows[i].list_names_of_authors.split(", ");
                                lastIndex = authors.length - 1;
                                authors[lastIndex] = authors[lastIndex].slice(4, authors[lastIndex].length - 1);
                                for(var j = 0; j <= lastIndex; j++)
                                {  
                                    let authorLink = "";
                                    let authorsLC = authors[j].toLowerCase();
                                    if(j == lastIndex)
                                    {
                                        if(authorsLC.includes("."))
                                        {  
                                            authorLink += authorsLC.charAt(authorsLC.indexOf(".") - 1);
                                            authorLink += "-";
                                            authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        }
                                        else
                                        {
                                            authorLink += authorsLC.charAt(authorsLC.length - 1);
                                            authorLink += "-";
                                            authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        }
                                        
                                    }
                                    else
                                    {
                                        authorLink += authorsLC.charAt(authorsLC.indexOf(".") - 1);
                                        authorLink += "-";
                                        authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        
                                    }
                                    authorLink = 'https://vip.uwaterloo.ca/' + authorLink;
                                    if(j != lastIndex)
                                    {
                                        publication += `<a href='${authorLink}' target='_blank'>${authors[j]}</a>` + ", ";
                                    }
                                    else 
                                    {
                                        publication += "and " + `<a href='${authorLink}' target='_blank'>${authors[j]}</a>`;
                                    }
                                }

                                publication += ', "';
                                
                                publication += value.rows[i].title;
                                
                                publication += '", ';
                                publication += value.rows[i].pub_name;
                                if (!isConference(value.rows[i]))
                                {
                                    publication += ", vol. ";
                                    publication += value.rows[i].volume;
                                    publication += ", ";
                                }
                                if (value.rows[i].page_range != "" && !isConference(value.rows[i]))
                                {
                                    publication += "pp. ";
                                    publication += value.rows[i].page_range;
                                    publication += ", ";
                                }
                                else if(isConference(value.rows[i]))
                                {
                                    publication += ", ";
                                }
                                publication += value.rows[i].year;
                                publication += ". ";
                                publication += `<a href="#" onclick="generateLink(this, '${value.rows[i].title}');event.preventDefault();">Get it here.</a>`;
                                
                                publication += "\n\n";
                                if (isConference(value.rows[i]))
                                {
                                    pubListConference += publication;
                                }
                                else
                                {
                                      pubListJournals += publication;
                                }
                            }
                document.getElementById('pubDataJournals').innerHTML = pubListJournals;
                document.getElementById('pubDataConference').innerHTML = pubListConference;
                //document.getElementById("testLink").innerHTML = value.rows[1].list_names_of_authors;
                //break at commas, ensure you end up with Clausi D or Fang Y. Then add - and remove spaces and reverse
                //gives you d-clausi, y-fang. For hyperlinking to page.
            },
            function(error) {document.getElementById('publicationData').innerHTML = "Error retrieving data.";}
        )
    }

    function isConference(publication)
    {
        return publication.volume == 0 || publication.pub_name.includes("Conference") || publication.pub_name.includes("Proceedings") || publication.pub_name.includes("Lecture Notes") || publication.pub_name.includes("Symposium");
    }
</script>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>David Clausi</title>
		<link>https://vip.uwaterloo.ca/d-clausi/</link>
					<comments>https://vip.uwaterloo.ca/d-clausi/#comments</comments>
		
		<dc:creator><![CDATA[David A Clausi]]></dc:creator>
		<pubDate>Mon, 13 Feb 2023 20:18:05 +0000</pubDate>
				<category><![CDATA[3D Reconstruction of Underwater Scenes]]></category>
		<category><![CDATA[Action Recognition in Video]]></category>
		<category><![CDATA[Biomedical Imaging]]></category>
		<category><![CDATA[Coded Hemodynamic Imaging]]></category>
		<category><![CDATA[Compressed Sensing]]></category>
		<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[Decoupled Active Contours]]></category>
		<category><![CDATA[Directors]]></category>
		<category><![CDATA[Disparate Scene Registration]]></category>
		<category><![CDATA[Enhanced Decoupled Active Contour Using Structural and Textural Variation Energy Functionals]]></category>
		<category><![CDATA[Hybrid Structural and Texture Distinctiveness Vector Field Convolution for Region Segmentation]]></category>
		<category><![CDATA[Image Denoising]]></category>
		<category><![CDATA[Image Segmentation/Classification]]></category>
		<category><![CDATA[MAGIC System]]></category>
		<category><![CDATA[Multiresolution Techniques]]></category>
		<category><![CDATA[People]]></category>
		<category><![CDATA[Remote Sensing]]></category>
		<category><![CDATA[SAR Sea Ice Image Synthesis]]></category>
		<category><![CDATA[Satellite SAR Sea Ice Classification]]></category>
		<category><![CDATA[Scientific Imaging]]></category>
		<category><![CDATA[Skin Cancer Detection]]></category>
		<category><![CDATA[Sports Analytics]]></category>
		<category><![CDATA[Statistical Textural Distinctiveness for Salient Region Detection in Natural Images]]></category>
		<category><![CDATA[Stereo Vision for Dimension Estimation]]></category>
		<category><![CDATA[Stochastic Models]]></category>
		<category><![CDATA[Texture Classification]]></category>
		<category><![CDATA[Video Analysis]]></category>
		<guid isPermaLink="false">https://wwwvip.uwaterloo.ca/?p=52</guid>

					<description><![CDATA[My research interests are in the fields of computer vision, image processing, and pattern recognition with an emphasis on the automated interpretation of SAR (synthetic aperture radar) and biomedical imagery. I am an active interdisciplinary and multidisciplinary researcher, publishing refereed journal and conference papers in the diverse fields of remote sensing, computer vision, algorithm design, and biomechanics.]]></description>
										<content:encoded><![CDATA[
<p>I completed my Ph.D. in Systems Design Engineering in 1996 and immediately afterwards, I worked in software medical imaging field at Agfa (nee Mitra)&nbsp;in Waterloo, Ontario.&nbsp;&nbsp;I started&nbsp;my academic career in 1997 as an Assistant Professor in Geomatics Engineering at the University of Calgary, Canada. In 1999,&nbsp;I returned to my alma mater and I am now a Professor specializing in the fields of Intelligent and Environmental Systems.&nbsp; In addition, I was the Associate Chair &#8211; Graduate Studies (2009-2012).&nbsp; I was the Co-chair of IAPR Technical Committee 7 – Remote Sensing during 2004-2006.&nbsp;I have&nbsp;numerous recognitions, including received five Outstanding Performance Awards, three Distinguished Performance Awards, the Sanford Fleming Teaching Excellence Award, and a University of Calgary&nbsp;Teaching Excellence Award.&nbsp; In 2010, I received the award for “Research Excellence and Service to the Research Community” by the Canadian Image Processing and Pattern Recognition Society (CIPPRS).&nbsp;In 2012, I received the Engineering Research Excellence Award.</p>



<p>Currently, I am the Associate Dean &#8211; Research &amp; External Partnerships within the Faculty of Engineering, responsible for all research related activities in the largest Engineering school in Canada.  </p>



<h2 class="wp-block-heading"><strong>Research interests</strong></h2>



<p>My research interests are in the fields of computer vision, image processing, and pattern recognition with an emphasis on the automated interpretation of SAR (synthetic aperture radar) and sports analytics (ice hockey).&nbsp; I am an active interdisciplinary and multidisciplinary researcher, publishing refereed journal and conference papers in the diverse fields of remote sensing, sports analytics, computer vision, algorithm design, and biomechanics. My research efforts have led to successful commercial implementations including creating and selling a startup company (<a href="https://wwwvip.uwaterloo.ca/crez-basketball-systems-inc/" data-type="post" data-id="567">CREZ</a>).</p>



<h2 class="wp-block-heading"><strong>Students</strong></h2>



<h3 class="wp-block-heading"><strong>Supervision &#8211; Current</strong></h3>



<h4 class="wp-block-heading"><strong>PDF</strong></h4>


<div class="lazyblock-related-people-1J8VRm wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/x-chen/>Xinwei Chen</a></p></div>


<h4 class="wp-block-heading" style="text-transform:capitalize"><strong>Ph.D</strong></h4>


<div class="lazyblock-related-people-qq5qm wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/soheil-soltani/>Soheil Soltani</a>, <a href=https://vip.uwaterloo.ca/youssef-nafea/>Youssef Nafea</a>, <a href=https://vip.uwaterloo.ca/zhibo-wang-2/>Zhibo Wang</a>, <a href=https://vip.uwaterloo.ca/j-noa/>Javier Noa Turnes</a></p></div>


<h4 class="wp-block-heading" style="text-transform:capitalize"><strong>M.A.Sc</strong></h4>


<div class="lazyblock-related-people-ZBusJm wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/h-nguyen-huu/>Howard Nguyen-Huu</a>, <a href=https://vip.uwaterloo.ca/j-hsiao/>Jayden Hsiao</a>, <a href=https://vip.uwaterloo.ca/kevin-li/>Kevin Li</a>, <a href=https://vip.uwaterloo.ca/quanyun-daniel-wu/>Quanyun (Daniel) Wu</a>, <a href=https://vip.uwaterloo.ca/jerry-jitao-hu/>Jerry (Jitao) Hu</a>, <a href=https://vip.uwaterloo.ca/kshitij-goyal/>Kshitij Goyal</a>, <a href=https://vip.uwaterloo.ca/n-azad/>Niloofar Azad</a>, <a href=https://vip.uwaterloo.ca/liam-salass/>Liam Salass</a>, <a href=https://vip.uwaterloo.ca/junfeng-lei/>Junfeng Lei</a></p></div>


<h3 class="wp-block-heading"><strong>Supervision &#8211; Completed</strong></h3>



<h4 class="wp-block-heading"><strong>PDF</strong></h4>


<div class="lazyblock-related-people-AOUaf wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/y-fang/>Yuan Fang</a> (2023), <a href=https://vip.uwaterloo.ca/m-fani/>Mehrnaz Fani</a> (2019-2022), <a href=https://vip.uwaterloo.ca/linlin-xu/>Linlin Xu</a> (2016), <a href=https://vip.uwaterloo.ca/h-sekkati/>Hicham Sekkati</a> (2016), <a href=https://vip.uwaterloo.ca/b-hongbo/>Bi Hongbo</a> (2015), <a href=https://vip.uwaterloo.ca/f-hui/>Fu (Helen) Hui</a> (2015), <a href=https://vip.uwaterloo.ca/s-wang/>Shelley Wang</a> (2014), <a href=https://vip.uwaterloo.ca/c-scharfenberger/>Christian Scharfenberger</a> (2014), <a href=https://vip.uwaterloo.ca/p-siva/>Parthipan Siva</a> (2013), <a href=https://vip.uwaterloo.ca/z-wang/>Zhijie Wang</a> (2012), <a href=https://vip.uwaterloo.ca/k-qin/>Kai (Alex) Qin</a> (2009), <a href=https://vip.uwaterloo.ca/x-yang/>Xuezhi (Bruce) Yang</a> (2005), <a href=https://vip.uwaterloo.ca/h-deng/>Huawu (Gordon) Deng</a> (2004)</p></div>


<h4 class="wp-block-heading" style="text-transform:capitalize"><strong>Ph.D</strong></h4>


<div class="lazyblock-related-people-Z1XTS5Y wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/j-park/>Jinman (Eddie) Park</a> (2025), <a href=https://vip.uwaterloo.ca/s-taleghanidoozdoozan/>Saeid Taleghanidoozdoozan</a> (2023), <a href=https://vip.uwaterloo.ca/k-vats/>Kanav Vats</a> (2022), <a href=https://vip.uwaterloo.ca/m-jiang/>Mingzhe (Major) Jiang</a> (2022), <a href=https://vip.uwaterloo.ca/yuan-fang/>Yuan Fang</a> (2022), <a href=https://vip.uwaterloo.ca/mohsen-ghanbari/>Mohsen Ghanbari</a> (2021), <a href=https://vip.uwaterloo.ca/s-haider/>Shahid Haider</a> (), <a href=https://vip.uwaterloo.ca/r-amelard/>Robert Amelard</a> (2017), <a href=https://vip.uwaterloo.ca/k-kasiri/>Keyvan Kasiri</a> (2016), <a href=https://vip.uwaterloo.ca/f-kazemzadeh/>Farnoud Kazemzadeh</a> (2016), <a href=https://vip.uwaterloo.ca/d-cho/>Daniel S. Cho</a> (2016), <a href=https://vip.uwaterloo.ca/l-wang/>Lei Wang</a> (), <a href=https://vip.uwaterloo.ca/f-li/>Fan Li</a> (2015), <a href=https://vip.uwaterloo.ca/s-schwartz/>Shimon Schwartz</a> (2013), <a href=https://vip.uwaterloo.ca/j-eichel/>Justin Eichel</a> (2013), <a href=https://vip.uwaterloo.ca/s-ochilov/>Shuhrat Ochilov</a> (2012), <a href=https://vip.uwaterloo.ca/l-shen/>Li Shen</a> (2012), <a href=https://vip.uwaterloo.ca/a-shabani/>Amir H. Shabani</a> (2011), <a href=https://vip.uwaterloo.ca/l-liu/>Li Liu</a> (2011), <a href=https://vip.uwaterloo.ca/a-mishra/>Akshaya Mishra</a> (2010), <a href=https://vip.uwaterloo.ca/q-yu/>Qiyao Yu</a> (2006), <a href=https://vip.uwaterloo.ca/m-ali/>Mohammed Ali</a> (2003), <a href=https://vip.uwaterloo.ca/ken-m-nsiempba/>Ken M. Nsiempba</a> ()</p></div>


<h4 class="wp-block-heading" style="text-transform:capitalize"><strong>M.A.Sc</strong></h4>


<div class="lazyblock-related-people-zq34s wp-block-lazyblock-related-people"><p>
  <a href=https://vip.uwaterloo.ca/l-de-loe/>Lily de Loë</a> (2025), <a href=https://vip.uwaterloo.ca/v-chomko/>Vasyl Chomko</a> (2025), <a href=https://vip.uwaterloo.ca/k-buzko/>Kseniia (Ksusha) Buzko</a> (2025), <a href=https://vip.uwaterloo.ca/mohammad-basri/>Mohammad Basri</a> (2024), <a href=https://vip.uwaterloo.ca/bavesh-balaji/>Bavesh Balaji</a> (2024), <a href=https://vip.uwaterloo.ca/harish-prakash/>Harish Prakash</a> (2024), <a href=https://vip.uwaterloo.ca/marjan-shahi/>Marjan Shahi</a> (), <a href=https://vip.uwaterloo.ca/f-pena/>Fernando J. Pena Cantu</a> (2024), <a href=https://vip.uwaterloo.ca/muhammed-patel/>Muhammed Patel</a> (2024), <a href=https://vip.uwaterloo.ca/n-brubacher/>Neil Brubacher</a> (2024), <a href=https://vip.uwaterloo.ca/j-shang/>Jason (Jia Cheng) Shang</a> (2023), <a href=https://vip.uwaterloo.ca/b-gebotys/>Brennan Gebotys</a> (2022), <a href=https://vip.uwaterloo.ca/m-manning/>Max Manning</a> (2022), <a href=https://vip.uwaterloo.ca/y-wu/>Yifan Wu</a> (2022), <a href=https://vip.uwaterloo.ca/p-walters/>Pascale Walters</a> (2021), <a href=https://vip.uwaterloo.ca/c-dulhanty/>Chris Dulhanty</a> (2020), <a href=https://vip.uwaterloo.ca/peter-q-lee/>Peter Q. Lee</a> (2020), <a href=https://vip.uwaterloo.ca/m-hoekstra/>Marie Hoekstra</a> (2018), <a href=https://vip.uwaterloo.ca/v-sankar/>Vignesh Sankar</a> (2018), <a href=https://vip.uwaterloo.ca/d-kumar/>Devinder Kumar</a> (2016), <a href=https://vip.uwaterloo.ca/e-li/>Edward Li</a> (2016), <a href=https://vip.uwaterloo.ca/b-chwyl/>Brendan Chwyl</a> (2016), <a href=https://vip.uwaterloo.ca/s-haider/>Shahid Haider</a> (2015), <a href=https://vip.uwaterloo.ca/r-amelard-2/>Robert Amelard</a> (2013), <a href=https://vip.uwaterloo.ca/s-leigh/>Steven Leigh</a> (2013), <a href=https://vip.uwaterloo.ca/j-glaister/>Jeffrey Glaister</a> (2013), <a href=https://vip.uwaterloo.ca/a-kumar/>Abhishek Kumar</a> (2012), <a href=https://vip.uwaterloo.ca/n-bandekar/>Namrata Bandekar</a> (2012), <a href=https://vip.uwaterloo.ca/n-cavan/>Neil Cavan</a> (2011), <a href=https://vip.uwaterloo.ca/f-tung/>Fred Tung</a> (2010), <a href=https://vip.uwaterloo.ca/w-zhang/>Wen Zhang</a> (2009), <a href=https://vip.uwaterloo.ca/p-yu/>Peter Yu</a> (2009), <a href=https://vip.uwaterloo.ca/n-el-nabbout/>Natalie El-Nabbout</a> (2008), <a href=https://vip.uwaterloo.ca/k-mcbride/>Kurtis McBride</a> (2007), <a href=https://vip.uwaterloo.ca/d-kwok/>Damian Kwok</a> (2007), <a href=https://vip.uwaterloo.ca/p-iles/>Peter Iles</a> (2005), <a href=https://vip.uwaterloo.ca/m-korhonen/>Mark Korhonen</a> (2004), <a href=https://vip.uwaterloo.ca/r-jobanputra/>Rishi Jobanputra</a> (2004), <a href=https://vip.uwaterloo.ca/s-puddister/>Shannon Puddister</a> (2003), <a href=https://vip.uwaterloo.ca/r-ge/>Renyan (Ryan) Ge</a> (2003), <a href=https://vip.uwaterloo.ca/s-booth/>Simon Booth</a> (2003), <a href=https://vip.uwaterloo.ca/b-yue/>Bing Yue</a> (2001)</p></div>

<div class="lazyblock-research-1l6Au0 wp-block-lazyblock-research"><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Research topics</div><a href=https://vip.uwaterloo.ca/biomedical-imaging/>Biomedical Imaging</a><br><a href=https://vip.uwaterloo.ca/computer-vision/>Computer Vision</a><br><a href=https://vip.uwaterloo.ca/image-segmentation-classification/>Image Segmentation/Classification</a><br><a href=https://vip.uwaterloo.ca/multiresolution-techniques/>Multiresolution Techniques</a><br><a href=https://vip.uwaterloo.ca/remote-sensing/>Remote Sensing</a><br><a href=https://vip.uwaterloo.ca/scientific-imaging/>Scientific Imaging</a><br><a href=https://vip.uwaterloo.ca/sports-analytics/>Sports Analytics</a><br><a href=https://vip.uwaterloo.ca/stochastic-models/>Stochastic Models</a><br><a href=https://vip.uwaterloo.ca/video-analysis/>Video Analysis</a><br><link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro'>
  <div style='margin-bottom: 0.6rem; font-family: Source Serif Pro, Georgia, Times New Roman, serif; font-size: 3rem; font-weight: bold;'>Research demos</div><a href=https://vip.uwaterloo.ca/3d-reconstruction-of-underwater-scenes/>3D Reconstruction of Underwater Scenes</a><br><a href=https://vip.uwaterloo.ca/action-recognition-in-video/>Action Recognition in Video</a><br><a href=https://vip.uwaterloo.ca/coded-hemodynamic-imaging/>Coded Hemodynamic Imaging</a><br><a href=https://vip.uwaterloo.ca/compressed-sensing/>Compressed Sensing</a><br><a href=https://vip.uwaterloo.ca/decoupled-active-contours/>Decoupled Active Contours</a><br><a href=https://vip.uwaterloo.ca/disparate-scene-registration/>Disparate Scene Registration</a><br><a href=https://vip.uwaterloo.ca/enhanced-decoupled-active-contour-using-structural-and-textural-variation-energy-functionals/>Enhanced Decoupled Active Contour Using Structural and Textural Variation Energy Functionals</a><br><a href=https://vip.uwaterloo.ca/hybrid-structural-and-texture-distinctiveness-vector-field-convolution-for-region-segmentation/>Hybrid Structural and Texture Distinctiveness Vector Field Convolution for Region Segmentation</a><br><a href=https://vip.uwaterloo.ca/image-denoising/>Image Denoising</a><br><a href=https://vip.uwaterloo.ca/magic-system/>MAGIC System</a><br><a href=https://vip.uwaterloo.ca/sar-sea-ice-image-synthesis/>SAR Sea Ice Image Synthesis</a><br><a href=https://vip.uwaterloo.ca/satellite-sar-sea-ice-classification/>Satellite SAR Sea Ice Classification</a><br><a href=https://vip.uwaterloo.ca/skin-cancer-detection/>Skin Cancer Detection</a><br><a href=https://vip.uwaterloo.ca/statistical-textural-distinctiveness-for-salient-region-detection-in-natural-images/>Statistical Textural Distinctiveness for Salient Region Detection in Natural Images</a><br><a href=https://vip.uwaterloo.ca/stereo-vision-for-dimension-estimation/>Stereo Vision for Dimension Estimation</a><br><a href=https://vip.uwaterloo.ca/texture-classification/>Texture Classification</a><br></div>


<meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet">
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js"></script>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Serif+Pro">

  <!-- Load external CSS styles -->
  <link rel="stylesheet" href="../stylesbootstrap.css">

<style>

#peoplePublications {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    font-weight: bold;
    font-size: 3rem;
    text-align: start;
    margin-bottom: 0.6em;
}

#peoplePublications ~ span {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    font-weight: bold;
    font-size: 1.75rem;
    text-align: start;
    margin-bottom: 0.5em;
}

#nav {
    text-align: start;
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    margin-bottom: 0.5em;
    margin-left: 0;
    padding-left: 0;
}

#nav a {
    text-decoration-line: underline;
}

#nav a:hover {
    text-decoration-line: none;
}

#mainContent {
    max-width: 100%;
}

#pubDataJournals {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    padding-left: 0;
    font-size: 1.75rem;
    white-space: pre-wrap;
}

#pubDataConference {
    font-family: "Source Serif Pro", "Georgia", "Times New Roman", "serif";
    padding-left: 0;
    font-size: 1.75rem;
    white-space: pre-wrap;
}
</style>

  <!--Main Content-->
  <div class="container mt-5" id="mainContent">
  
   <div class="row">
      <div class="col ps-0" id="peoplePublications">Publications</div>
      <div id="nav">
        <a href="#journalArticles">Journal Articles</a>
        <span> / </span>
        <a href="#conferencePapers">Conference Papers</a>
      </div>
      <span id="journalArticles" class="ps-0">Journal Articles</span>
      <p id="pubDataJournals">
        <!-- journal data from JS here -->
      </p>
      <span id="conferencePapers" class="ps-0">Conference Papers</span>
      <div id="nav">
        <a href="#peoplePublications">Top</a>
      </div>
      <p id="pubDataConference">
        <!-- conference paper data from JS here -->
      </p>
    </div>
  </div>

<script>
    
    const scopusID = 7003991297; //David Clausi
    const user = "dclausi";
    const api = "https://ecserv2.uwaterloo.ca/researchmicro/research/publications.php?user=" +user;
   const openAccess = "https://bg.api.oa.works/find?id=";
    
    displayPublications();

   async function getOA(searchQuery)
    {
        let openInfo = await fetch(openAccess + searchQuery);
        let openInfoText = await openInfo.text();
        return JSON.parse(openInfoText).url;
    }

    async function getPublications(file) {
        let publicationData = await fetch(file);
        let pubText = await publicationData.text();
        pubText = pubText.replace("=", ":"); //correcting API issue with = instead of :
        return JSON.parse(pubText);
    }

    function generateLink(id, title)
    {
        id.onclick = "";
        id.innerHTML = "loading..."
        title = title.replaceAll(/ /g, '%20');
        getOA(title).then(
            function(value)
            {
                if(value == null)
                {
                    id.innerHTML = "Search UWaterloo Library";
                    id.href = 'https://ocul-wtl.primo.exlibrisgroup.com/discovery/search?query=any,contains,' + title + '&tab=OCULDiscoveryNetwork&search_scope=OCULDiscoveryNetwork&vid=01OCUL_WTL:WTL_DEFAULT&lang=en&offset=0';
                    id.target = "_blank";
                }
                else
                {
                    id.href = value;
                    id.target = "_blank";
                    id.innerHTML = "Open";
                }
            },
            function(error)
            {
                id.href = "#";
                id.innerHTML = "Not found";
            });
    }

    function displayPublications() {
	    getPublications(api).then(
            function(value) {
                const size = value.rows.length;
                let pubListJournals = "";
                let pubListConference = "";
                for(var i = 0; i < size; i++)
                            {
                                let publication = "";
                                let authors = value.rows[i].list_names_of_authors.split(", ");
                                lastIndex = authors.length - 1;
                                authors[lastIndex] = authors[lastIndex].slice(4, authors[lastIndex].length - 1);
                                for(var j = 0; j <= lastIndex; j++)
                                {  
                                    let authorLink = "";
                                    let authorsLC = authors[j].toLowerCase();
                                    if(j == lastIndex)
                                    {
                                        if(authorsLC.includes("."))
                                        {  
                                            authorLink += authorsLC.charAt(authorsLC.indexOf(".") - 1);
                                            authorLink += "-";
                                            authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        }
                                        else
                                        {
                                            authorLink += authorsLC.charAt(authorsLC.length - 1);
                                            authorLink += "-";
                                            authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        }
                                        
                                    }
                                    else
                                    {
                                        authorLink += authorsLC.charAt(authorsLC.indexOf(".") - 1);
                                        authorLink += "-";
                                        authorLink += authorsLC.slice(0, authorsLC.indexOf(" "));
                                        
                                    }
                                    authorLink = 'https://vip.uwaterloo.ca/' + authorLink;
                                    if(j != lastIndex)
                                    {
                                        publication += `<a href='${authorLink}' target='_blank'>${authors[j]}</a>` + ", ";
                                    }
                                    else 
                                    {
                                        publication += "and " + `<a href='${authorLink}' target='_blank'>${authors[j]}</a>`;
                                    }
                                }

                                publication += ', "';
                                
                                publication += value.rows[i].title;
                                
                                publication += '", ';
                                publication += value.rows[i].pub_name;
                                if (!isConference(value.rows[i]))
                                {
                                    publication += ", vol. ";
                                    publication += value.rows[i].volume;
                                    publication += ", ";
                                }
                                if (value.rows[i].page_range != "" && !isConference(value.rows[i]))
                                {
                                    publication += "pp. ";
                                    publication += value.rows[i].page_range;
                                    publication += ", ";
                                }
                                else if(isConference(value.rows[i]))
                                {
                                    publication += ", ";
                                }
                                publication += value.rows[i].year;
                                publication += ". ";
                                publication += `<a href="#" onclick="generateLink(this, '${value.rows[i].title}');event.preventDefault();">Get it here.</a>`;
                                
                                publication += "\n\n";
                                if (isConference(value.rows[i]))
                                {
                                    pubListConference += publication;
                                }
                                else
                                {
                                      pubListJournals += publication;
                                }
                            }
                document.getElementById('pubDataJournals').innerHTML = pubListJournals;
                document.getElementById('pubDataConference').innerHTML = pubListConference;
                //document.getElementById("testLink").innerHTML = value.rows[1].list_names_of_authors;
                //break at commas, ensure you end up with Clausi D or Fang Y. Then add - and remove spaces and reverse
                //gives you d-clausi, y-fang. For hyperlinking to page.
            },
            function(error) {document.getElementById('publicationData').innerHTML = "Error retrieving data.";}
        )
    }

    function isConference(publication)
    {
        return publication.volume == 0 || publication.pub_name.includes("Conference") || publication.pub_name.includes("Proceedings") || publication.pub_name.includes("Lecture Notes") || publication.pub_name.includes("Symposium");
    }
</script>
]]></content:encoded>
					
					<wfw:commentRss>https://vip.uwaterloo.ca/d-clausi/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
