<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.9.2">Jekyll</generator><link href="https://sid2697.github.io/Blog_Sid/feed.xml" rel="self" type="application/atom+xml" /><link href="https://sid2697.github.io/Blog_Sid/" rel="alternate" type="text/html" /><updated>2022-09-02T11:17:54+00:00</updated><id>https://sid2697.github.io/Blog_Sid/feed.xml</id><title type="html">Siddhant’s Scratch Book</title><subtitle>A series of blog posts gathering notes on interesting concepts read by me. These blog posts aim to provide readers with a solid idea on the topic they  are reading.</subtitle><entry><title type="html">DBpedia GSoC 2022 (Week 10-11): Website with UPLOAD functionality</title><link href="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/08/12/dbpedia-gsoc-week10-11.html" rel="alternate" type="text/html" title="DBpedia GSoC 2022 (Week 10-11): Website with UPLOAD functionality" /><published>2022-08-12T06:30:00+00:00</published><updated>2022-08-12T06:30:00+00:00</updated><id>https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/08/12/dbpedia-gsoc-week10-11</id><content type="html" xml:base="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/08/12/dbpedia-gsoc-week10-11.html">&lt;p&gt;This article summarises my progess in GSoC over weeks ten and eleven of the GSoC coding period.&lt;/p&gt;

&lt;p&gt;For these weeks, I went on to further update the UI of the web interface created. Instead of giving the image index as an input, I added an upload button to the webpage. Now, the user can upload any image to the portal. The input image will then be processed to generate its embedding and the embedding generated is used to query the pre-saved dataset.&lt;/p&gt;

&lt;p&gt;Here is the link to the code for creating the webpage: &lt;a href=&quot;https://github.com/dbpedia/image-search-gsoc-2022/tree/main/website_demo&quot;&gt;GitHub&lt;/a&gt;.&lt;/p&gt;</content><author><name></name></author><category term="Open" /><category term="Source" /><category term="Contribution" /><summary type="html">This article summarises my progess in GSoC over weeks ten and eleven of the GSoC coding period.</summary></entry><entry><title type="html">DBpedia GSoC 2022 (Week 12-13): Winding down the code, documentation, and API</title><link href="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/08/12/dbpedia-week12-13.html" rel="alternate" type="text/html" title="DBpedia GSoC 2022 (Week 12-13): Winding down the code, documentation, and API" /><published>2022-08-12T06:30:00+00:00</published><updated>2022-08-12T06:30:00+00:00</updated><id>https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/08/12/dbpedia-week12-13</id><content type="html" xml:base="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/08/12/dbpedia-week12-13.html">&lt;p&gt;This article summarises my progess in GSoC over weeks twelve and thirteen of the GSoC coding period.&lt;/p&gt;

&lt;p&gt;Using Django, I created an API that anyone can use on their webpage for using the pipeline developed during the GSoC coding period. Furthermore, I udpated the documentation of the code written making it easy to follow and utilise.&lt;/p&gt;

&lt;p&gt;The following link contains all the code written during the GSoC period along with the API and documentation: &lt;a href=&quot;https://github.com/dbpedia/image-search-gsoc-2022/&quot;&gt;GitHub&lt;/a&gt;.&lt;/p&gt;</content><author><name></name></author><category term="Open" /><category term="Source" /><category term="Contribution" /><summary type="html">This article summarises my progess in GSoC over weeks twelve and thirteen of the GSoC coding period.</summary></entry><entry><title type="html">DBpedia GSoC 2022 (Week 9): Website-based demo for the framework + Mid-eval</title><link href="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/29/dbpedia-gsoc-week9.html" rel="alternate" type="text/html" title="DBpedia GSoC 2022 (Week 9): Website-based demo for the framework + Mid-eval" /><published>2022-07-29T06:30:00+00:00</published><updated>2022-07-29T06:30:00+00:00</updated><id>https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/29/dbpedia-gsoc-week9</id><content type="html" xml:base="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/29/dbpedia-gsoc-week9.html">&lt;p&gt;This article summarises my progess in GSoC over week nine of the GSoC coding period.&lt;/p&gt;

&lt;h4 id=&quot;implementing-the-complete-framework&quot;&gt;Implementing the complete framework&lt;/h4&gt;

&lt;p&gt;This week I was able to finish all the parts of the framework and create a functional pipeline for the process.
The steps involved:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Getting an image from the user.&lt;/li&gt;
  &lt;li&gt;Pass the image through a pre-trained ResNet-50 to generate the embeddings.&lt;/li&gt;
  &lt;li&gt;Load the ResNet-50 embeddings of images in the dataset created earlier.&lt;/li&gt;
  &lt;li&gt;Compute similarity between the query image and images in the dataset.&lt;/li&gt;
  &lt;li&gt;Create a ranked list of dataset images in decreasing order of similarity scores.&lt;/li&gt;
&lt;/ol&gt;

&lt;h4 id=&quot;demo-of-the-framework&quot;&gt;Demo of the framework&lt;/h4&gt;

&lt;p&gt;Based on the pipeline mentioned above, for the purpose of mid-eval, I created a webpage that takes as input an image’s index (to use as query) and queries over rest of the images in the dataset. Here is the link to the code: &lt;a href=&quot;https://github.com/dbpedia/image-search-gsoc-2022/tree/main/website_demo&quot;&gt;Github&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Here is an image from the webpage:
&lt;img src=&quot;../assets/images/gsoc_images/website_demo.png&quot; alt=&quot;website_demo&quot; /&gt;&lt;/p&gt;</content><author><name></name></author><category term="Open" /><category term="Source" /><category term="Contribution" /><summary type="html">This article summarises my progess in GSoC over week nine of the GSoC coding period.</summary></entry><entry><title type="html">DBpedia GSoC 2022 (Week 8): Creating the dataset</title><link href="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/22/dbpedia-gsoc-week8.html" rel="alternate" type="text/html" title="DBpedia GSoC 2022 (Week 8): Creating the dataset" /><published>2022-07-22T06:30:00+00:00</published><updated>2022-07-22T06:30:00+00:00</updated><id>https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/22/dbpedia-gsoc-week8</id><content type="html" xml:base="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/22/dbpedia-gsoc-week8.html">&lt;p&gt;This article summarises my progess in GSoC over week eight of the GSoC coding period.&lt;/p&gt;

&lt;h4 id=&quot;using-sparql-to-query-the-dbpedia-knowledge-graph&quot;&gt;Using SPARQL to query the DBpedia Knowledge Graph&lt;/h4&gt;

&lt;p&gt;To create a proof-of-concept of the system envisioned previous week, we decided to create a small dataset of images from various categories that we can consider as a part of the knowledge graph and use an input query image from the user. Using the image from the user, we can query the dataset created.&lt;/p&gt;

&lt;p&gt;The first step before creating the dataset was to explore ways to query DBpedia. One of the ways is to use SPARQL. I used DBpedia’s SPARQL interface to make myself familiar with the query language. Link to the interface: &lt;a href=&quot;https://dbpedia.org/sparql/&quot;&gt;link&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Later, I wrote the code to use Python and SPARQL for querying the DBpedia knowledge graph. Here is the link to the code &lt;a href=&quot;https://github.com/dbpedia/image-search-gsoc-2022/blob/main/article-parser/create_dataset.py&quot;&gt;GitHub&lt;/a&gt;.&lt;/p&gt;

&lt;h4 id=&quot;the-dataset&quot;&gt;The dataset&lt;/h4&gt;

&lt;p&gt;Using the following query&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;select ?e ?image where { 
?e rdf:type dbo:Weapon  . 
?e dbo:thumbnail ?image .
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;I was able to create a dataset with the following classes and stats:&lt;/p&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th style=&quot;text-align: center&quot;&gt;Class&lt;/th&gt;
      &lt;th style=&quot;text-align: center&quot;&gt;No. of Images&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;Birds&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;3883&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;Historic Places&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;7987&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;Politicians&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1539&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;Reptiles&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;2337&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;Weapons&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;1954&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;p&gt;In addition to the images, I also saved a mapping between the image’s path and the article’s corresponding URI. This will help in retrieving articles faster.&lt;/p&gt;</content><author><name></name></author><category term="Open" /><category term="Source" /><category term="Contribution" /><summary type="html">This article summarises my progess in GSoC over week eight of the GSoC coding period.</summary></entry><entry><title type="html">DBpedia GSoC 2022 (Week 7): Using the embeddings to query the Knowledge Graph</title><link href="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/15/dbpedia-gsoc-week7.html" rel="alternate" type="text/html" title="DBpedia GSoC 2022 (Week 7): Using the embeddings to query the Knowledge Graph" /><published>2022-07-15T06:30:00+00:00</published><updated>2022-07-15T06:30:00+00:00</updated><id>https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/15/dbpedia-gsoc-week7</id><content type="html" xml:base="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/15/dbpedia-gsoc-week7.html">&lt;p&gt;This article summarises my progess in GSoC over week seven of the GSoC coding period.&lt;/p&gt;

&lt;h4 id=&quot;how-to-use-the-embeddings-generated-for-querying-the-dbpedia-knowledge-graph&quot;&gt;How to use the embeddings generated for querying the DBpedia Knowledge Graph&lt;/h4&gt;

&lt;p&gt;&lt;img src=&quot;../assets/images/gsoc_images/GSoC_methodology_part2_v0.1.png&quot; alt=&quot;Using the embeddings&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Figure 1. Once we have the image-based KG, we aim to use it for image query search in DBpedia. As seen in the figure, here we have a query image given by the user. It is first converted to an embedding using ResNet-50. Then a similarity score between the nodes of KG and the embedding is generated. Using the similarity score, a ranked list of images (and the corresponding articles) is created.&lt;/p&gt;

&lt;p&gt;The code related to the above figure is present here: &lt;a href=&quot;https://github.com/dbpedia/image-search-gsoc-2022/tree/main/kg_query&quot;&gt;Github&lt;/a&gt;.&lt;/p&gt;</content><author><name></name></author><category term="Open" /><category term="Source" /><category term="Contribution" /><summary type="html">This article summarises my progess in GSoC over week seven of the GSoC coding period.</summary></entry><entry><title type="html">DBpedia GSoC 2022 (Week 3-4): Project Summary and Begin Coding</title><link href="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/08/dbpedia-gsoc-week3-4.html" rel="alternate" type="text/html" title="DBpedia GSoC 2022 (Week 3-4): Project Summary and Begin Coding" /><published>2022-07-08T06:30:00+00:00</published><updated>2022-07-08T06:30:00+00:00</updated><id>https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/08/dbpedia-gsoc-week3-4</id><content type="html" xml:base="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/08/dbpedia-gsoc-week3-4.html">&lt;p&gt;This article summarises my progess in GSoC over the past two weeks after the community bonding period ended.&lt;/p&gt;

&lt;p&gt;I was working on fine-tuning the problem statement and began coding various parts of the proposed framework.&lt;/p&gt;

&lt;h3 id=&quot;problem-statement-in-detail&quot;&gt;Problem Statement in Detail&lt;/h3&gt;

&lt;h4 id=&quot;how-does-dbpedia-currently-works&quot;&gt;How does DBpedia currently works?&lt;/h4&gt;

&lt;p&gt;Currently, DBpedia uses text as an input to search through the entities present in the Knowledge Graph.&lt;/p&gt;

&lt;h4 id=&quot;what-is-the-issue-with-this-approach&quot;&gt;What is the issue with this approach?&lt;/h4&gt;

&lt;p&gt;Imagine a situation where you only have a visual explaination of the object. How can we query DBpedia in such a case? Therefore, if we have only an image of something, we will not be able to query DBpedia Knowledge Graphs.&lt;/p&gt;

&lt;h4 id=&quot;what-do-we-want-to-achieve&quot;&gt;What do we want to achieve?&lt;/h4&gt;

&lt;p&gt;Given an image, we want to search for articles related to it.&lt;/p&gt;

&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;https://upload.wikimedia.org/wikipedia/commons/thumb/5/5c/Axolotl-2193331_1280.webp/220px-Axolotl-2193331_1280.webp.png&quot; alt=&quot;Axolotl&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Figure 1. A lot  of us might not know the name of this fish (yes, it is a fish!). How do we use DBpedia to find its name? Current methods to query the DBpedia KG will not be able to take this image as an input and give its name. To overcome this limitation, in this project, we propose to create a KG using the images from DBpedia articles that will complement DBpedia’s existing KG and improve its functionality. By the way, this fish is the Axolotl.&lt;/p&gt;

&lt;h4 id=&quot;how-to-use-the-images&quot;&gt;How to use the images?&lt;/h4&gt;

&lt;p&gt;&lt;img src=&quot;../../../../assets/images/gsoc_images/GSoC_methodology_part1.png&quot; alt=&quot;Meth&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Figure 2. We want to generate a KG consisting of information from images from DBpedia aricticles. We represent a node as an image embedding and connect those nodes using the image’s semantic similarity or existing DB-KG links.&lt;/p&gt;

&lt;h4 id=&quot;code-written-for-this-purpose&quot;&gt;Code written for this purpose&lt;/h4&gt;

&lt;p&gt;Wrote the modules required to generate image embedding for a given image. Link: &lt;a href=&quot;https://github.com/dbpedia/image-search-gsoc-2022/tree/main/img_models&quot;&gt;GitHub&lt;/a&gt;&lt;/p&gt;</content><author><name></name></author><category term="Open" /><category term="Source" /><category term="Contribution" /><summary type="html">This article summarises my progess in GSoC over the past two weeks after the community bonding period ended.</summary></entry><entry><title type="html">DBpedia GSoC 2022 (Week 5-6): Visiting CVPR</title><link href="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/08/dbpedia-gsoc-week4-5.html" rel="alternate" type="text/html" title="DBpedia GSoC 2022 (Week 5-6): Visiting CVPR" /><published>2022-07-08T06:30:00+00:00</published><updated>2022-07-08T06:30:00+00:00</updated><id>https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/08/dbpedia-gsoc-week4-5</id><content type="html" xml:base="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/07/08/dbpedia-gsoc-week4-5.html">&lt;p&gt;This article summarises my progess in GSoC over weeks five and six of the GSoC coding period.&lt;/p&gt;

&lt;p&gt;For these weeks, I got permission from my mentors to visit New Orleans for attending &lt;a href=&quot;https://cvpr2022.thecvf.com/&quot;&gt;Computer Vision and Pattern Recognition&lt;/a&gt; conference. Here, along with other authors, I presented my work &lt;a href=&quot;https://ego4d-data.org/&quot;&gt;Ego4D: Around the World in 3,000 Hours of Egocentric Videos&lt;/a&gt;.&lt;/p&gt;</content><author><name></name></author><category term="Open" /><category term="Source" /><category term="Contribution" /><summary type="html">This article summarises my progess in GSoC over weeks five and six of the GSoC coding period.</summary></entry><entry><title type="html">DBpedia GSoC 2022 (Week 1-2): Community Bonding</title><link href="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/06/01/dbpedia-gsoc-week1-2.html" rel="alternate" type="text/html" title="DBpedia GSoC 2022 (Week 1-2): Community Bonding" /><published>2022-06-01T06:30:00+00:00</published><updated>2022-06-01T06:30:00+00:00</updated><id>https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/06/01/dbpedia-gsoc-week1-2</id><content type="html" xml:base="https://sid2697.github.io/Blog_Sid/open/source/contribution/2022/06/01/dbpedia-gsoc-week1-2.html">&lt;p&gt;I am glad to share that my &lt;a href=&quot;https://summerofcode.withgoogle.com/programs/2022/projects/IvRmwXNu&quot;&gt;application&lt;/a&gt; has been selected for &lt;a href=&quot;https://summerofcode.withgoogle.com/&quot;&gt;GSoC 2022&lt;/a&gt;!
I will be contributing to &lt;a href=&quot;https://www.dbpedia.org/&quot;&gt;DBpedia Association&lt;/a&gt;.
Under the mentorship of &lt;a href=&quot;https://twitter.com/edgardmarx&quot;&gt;Edgard Marx&lt;/a&gt;, &lt;a href=&quot;https://www.linkedin.com/in/ashutosh-kumar-/&quot;&gt;Ashutosh Kumar&lt;/a&gt;, and &lt;a href=&quot;https://www.linkedin.com/in/nausheenfatma/&quot;&gt;Nausheen Fatma&lt;/a&gt;, I will be working on bridging the gap between computer vision and knowledge graphs!&lt;/p&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th style=&quot;text-align: center&quot;&gt;Google Summer of Code&lt;/th&gt;
      &lt;th style=&quot;text-align: center&quot;&gt;DBpedia&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;&lt;img src=&quot;https://summerofcode.withgoogle.com/assets/media/logo.svg&quot; alt=&quot;GSoC Logo&quot; /&gt;&lt;/td&gt;
      &lt;td style=&quot;text-align: center&quot;&gt;&lt;img src=&quot;https://upload.wikimedia.org/wikipedia/commons/thumb/c/c0/DBpedia-Logo_.png/220px-DBpedia-Logo_.png&quot; alt=&quot;Dbpedia Logo&quot; /&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;h3 id=&quot;problem-statement&quot;&gt;Problem Statement&lt;/h3&gt;

&lt;p&gt;Currently, users can query DBpedia using text. Although text as an input is an efficient approach to query the graph, there are cases where we do not know what we are seeing. How does one search the knowledge graph (KG) in such cases? Imagine being able to query the DBpedia Knowledge Graph (DB-KG) using images! The idea here is to create a framework that can combine existing computer vision techniques with knowledge graphs. Doing this will enable us to query the existing knowledge graphs using multiple modalities: images and text. To this end, in this proposal, we examine and explore two aspects of DB-KG: (a) A framework to create an image-based KG out of existing DBpedia entries; (b) Using the graph created to perform tasks like image querying, text + image search, and using relevant input images to add more images to existing articles.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;a href=&quot;https://sid2697.github.io/Blog_Sid/&quot;&gt;Stay tuned&lt;/a&gt; for further updates on the project!&lt;/p&gt;
&lt;/blockquote&gt;</content><author><name></name></author><category term="Open" /><category term="Source" /><category term="Contribution" /><summary type="html">I am glad to share that my application has been selected for GSoC 2022! I will be contributing to DBpedia Association. Under the mentorship of Edgard Marx, Ashutosh Kumar, and Nausheen Fatma, I will be working on bridging the gap between computer vision and knowledge graphs!</summary></entry><entry><title type="html">Deep Future Gaze: Gaze Anticipation on Egocentric Videos Using Adversarial Networks</title><link href="https://sid2697.github.io/Blog_Sid/paper_summary/2020/09/01/Deep-future-gaze.html" rel="alternate" type="text/html" title="Deep Future Gaze: Gaze Anticipation on Egocentric Videos Using Adversarial Networks" /><published>2020-09-01T23:30:00+00:00</published><updated>2020-09-01T23:30:00+00:00</updated><id>https://sid2697.github.io/Blog_Sid/paper_summary/2020/09/01/Deep-future-gaze</id><content type="html" xml:base="https://sid2697.github.io/Blog_Sid/paper_summary/2020/09/01/Deep-future-gaze.html">&lt;p&gt;This paper proposes a &lt;em&gt;Generative Adversarial Network&lt;/em&gt; (GAN) based architecture called Deep Future Gaze (DFG) for addressing the task of &lt;em&gt;gaze anticipation&lt;/em&gt; in egocentric videos. DFG takes in a single frame and generates multiple frames; it attempts to anticipate the future gazes in the generated multiple frames. As in the case of other GANs, DFG consists of two networks: Generator (&lt;strong&gt;GN&lt;/strong&gt;) and Discriminator (&lt;strong&gt;D&lt;/strong&gt;). Here, &lt;strong&gt;GN&lt;/strong&gt; is a two-stream architecture (using 3D-CNN) which attempts to &lt;em&gt;untangle the foreground and background&lt;/em&gt; to generate the future frames, whereas, &lt;strong&gt;D&lt;/strong&gt; differentiates the synthetic frames generated by &lt;strong&gt;GN&lt;/strong&gt; from the real frames, thereby, helping to improve &lt;strong&gt;GN&lt;/strong&gt;. This enables DFG to perform better than the rest of the state-of-the-art techniques.&lt;/p&gt;

&lt;h3 id=&quot;architecture-overview&quot;&gt;Architecture Overview&lt;/h3&gt;

&lt;p&gt;The following figure gives an overview of DFG. 
It consists of two networks: Generator Network (&lt;strong&gt;GN&lt;/strong&gt;) and the Discriminator Network (&lt;strong&gt;D&lt;/strong&gt;). 
&lt;strong&gt;GN&lt;/strong&gt; is further divided into: Future Frame Generation Module (&lt;strong&gt;G&lt;/strong&gt;) and Temporal Saliency Prediction Module (&lt;strong&gt;GP&lt;/strong&gt;).&lt;/p&gt;

&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;../../../../assets/images/deep_future_gaze_CVPR_2017/architecture_overview.png&quot; alt=&quot;Network Architecture&quot; /&gt;
&lt;br /&gt;&lt;a href=&quot;https://openaccess.thecvf.com/content_cvpr_2017/papers/Zhang_Deep_Future_Gaze_CVPR_2017_paper.pdf&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;

&lt;h4 id=&quot;the-generator-network&quot;&gt;The Generator Network&lt;/h4&gt;
&lt;p&gt;For differentiating between the foreground (hands and objects) and background motion (complex head motion), the authors propose to use a two-stream architecture for &lt;strong&gt;GN&lt;/strong&gt;. 
Here, each stream consists of a 3D Convolutional Neural Network (CNN) architecture.&lt;/p&gt;

&lt;p&gt;The input frame is first passed through a 2D-CNN for generating a &lt;em&gt;latent representation&lt;/em&gt;. 
As shown in the figure above, this representation is then provided as an input to both the streams of the two-stream architecture. 
The two-stream architecture consists of foreground and background generation model.
Both the streams generate &lt;em&gt;N&lt;/em&gt; future frames.
In addition to generating the foreground frames, the foreground model also generates the &lt;em&gt;spatial temporal mask&lt;/em&gt; which has a pixel range of [0, 1]. 
Here, 1 indicates foreground and 0 indicates background. 
The background generation model has its own independent 3D-CNN, which, as the name suggests, generates the background frames.
For preserving the spatial and temporal information, the authors add up-sampling layers after the convolution layers.&lt;/p&gt;

&lt;p&gt;For looking real, the synthetic frames have to satisfy two criteria:&lt;/p&gt;
&lt;ol&gt;
  &lt;li&gt;Coherent semantics across the frames (e.g. no table surface is inside the refrigerator);&lt;/li&gt;
  &lt;li&gt;Consistent motion across time (e.g. hand motions should be smooth across the frames).&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Authors use &lt;strong&gt;GP&lt;/strong&gt; which uses the foreground, background, and mask frames for anticipating the gaze location (shown using red dot in the figure above).&lt;/p&gt;

&lt;h4 id=&quot;the-discriminator-network&quot;&gt;The Discriminator Network&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;D&lt;/strong&gt; aims at distinguishing the synthetic examples from the real ones. 
It follows the same architecture as &lt;strong&gt;G&lt;/strong&gt;, however, the up-sampling layers in &lt;strong&gt;G&lt;/strong&gt; are replaced by convolutional layers. 
The output of D is a binary label indicating whether the input is real or not.&lt;/p&gt;

&lt;h3 id=&quot;training-details&quot;&gt;Training Details&lt;/h3&gt;

&lt;p&gt;Following the concept of Generative Adversarial Network (GAN), the authors make &lt;strong&gt;G&lt;/strong&gt; and &lt;strong&gt;D&lt;/strong&gt; play against each other. 
Task of &lt;strong&gt;G&lt;/strong&gt; is to generate future frames which can fool &lt;strong&gt;D&lt;/strong&gt;, while &lt;strong&gt;D&lt;/strong&gt;’s task is to identify the real frames. 
In order to generate a frame consistent with the input frame, the authors use &lt;em&gt;L1&lt;/em&gt; loss. 
Both the networks are trained alternatively. 
The objective function of &lt;strong&gt;D&lt;/strong&gt; consists of a combination of binary cross entropy loss. 
However, &lt;strong&gt;G&lt;/strong&gt; has to satisfy two requirements: a) real output for fooling &lt;strong&gt;D&lt;/strong&gt;; b) initial frame should be visually consistent with the input frame. 
For that, a combination of binary cross entropy loss and L1 loss is used (mean square error loss results in over-smoothing of the first generated frame). 
&lt;strong&gt;GP&lt;/strong&gt; is trained using Kullback divergence (KLD) loss in a supervised approach.&lt;/p&gt;

&lt;h3 id=&quot;conclusions&quot;&gt;Conclusions&lt;/h3&gt;

&lt;p&gt;The authors test DFG on &lt;a href=&quot;http://cbs.ic.gatech.edu/fpv/&quot;&gt;GTEA&lt;/a&gt;, &lt;a href=&quot;http://cbs.ic.gatech.edu/fpv/&quot;&gt;GTEAPlus&lt;/a&gt;, and &lt;a href=&quot;https://github.com/Mengmi/deepfuturegaze_gan&quot;&gt;OST&lt;/a&gt; datasets. For analysis, authors use Area Under the Curve (&lt;a href=&quot;https://en.wikipedia.org/wiki/Receiver_operating_characteristic&quot;&gt;AUC&lt;/a&gt;) and Average Angular Error (AAE) metrics.&lt;/p&gt;

&lt;p&gt;Some of the important observations are:&lt;/p&gt;

&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;../../../../assets/images/deep_future_gaze_CVPR_2017/results.png&quot; alt=&quot;Qualitative Results&quot; /&gt;
&lt;br /&gt;&lt;a href=&quot;https://openaccess.thecvf.com/content_cvpr_2017/papers/Zhang_Deep_Future_Gaze_CVPR_2017_paper.pdf&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Images in the figure above show that DFG was able to &lt;em&gt;untangle foreground and background motions&lt;/em&gt;. In the foreground, both hand and objects are highlighted, whereas, the background is uniform all the time. And the mask highlight highest activation point;&lt;/li&gt;
  &lt;li&gt;Without using egocentric cues such as hands and objects of interest, DFG works better that the state-of-the-arts, which, in many cases, use egocentric cues;&lt;/li&gt;
  &lt;li&gt;Using two-steam architecture for learning foreground and background information, improves the gaze anticipation accuracy;&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;GP&lt;/strong&gt; trained only on real frames does not perform well;&lt;/li&gt;
  &lt;li&gt;Gaze moment on individual frames is dependent on their previous states;&lt;/li&gt;
  &lt;li&gt;DFG is successful in learning egocentric cues in the spatial domain and motion dynamics in the temporal domain.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;references&quot;&gt;References&lt;/h3&gt;
&lt;ol&gt;
  &lt;li&gt;Deep Future Gaze: Gaze Anticipation on Egocentric Videos Using Adversarial Networks. &lt;a href=&quot;https://openaccess.thecvf.com/content_cvpr_2017/papers/Zhang_Deep_Future_Gaze_CVPR_2017_paper.pdf&quot;&gt;[Paper]&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;GTEA. &lt;a href=&quot;http://cbs.ic.gatech.edu/fpv/&quot;&gt;[Link]&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;OST. &lt;a href=&quot;https://github.com/Mengmi/deepfuturegaze_gan&quot;&gt;[Link]&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;</content><author><name></name></author><category term="Paper_summary" /><summary type="html">This paper proposes a Generative Adversarial Network (GAN) based architecture called Deep Future Gaze (DFG) for addressing the task of gaze anticipation in egocentric videos. DFG takes in a single frame and generates multiple frames; it attempts to anticipate the future gazes in the generated multiple frames. As in the case of other GANs, DFG consists of two networks: Generator (GN) and Discriminator (D). Here, GN is a two-stream architecture (using 3D-CNN) which attempts to untangle the foreground and background to generate the future frames, whereas, D differentiates the synthetic frames generated by GN from the real frames, thereby, helping to improve GN. This enables DFG to perform better than the rest of the state-of-the-art techniques.</summary></entry><entry><title type="html">First Person Action Recognition Using Deep Learned Descriptors</title><link href="https://sid2697.github.io/Blog_Sid/paper_summary/2020/08/19/action-descriptors-Suriya.html" rel="alternate" type="text/html" title="First Person Action Recognition Using Deep Learned Descriptors" /><published>2020-08-19T23:30:00+00:00</published><updated>2020-08-19T23:30:00+00:00</updated><id>https://sid2697.github.io/Blog_Sid/paper_summary/2020/08/19/action-descriptors-Suriya</id><content type="html" xml:base="https://sid2697.github.io/Blog_Sid/paper_summary/2020/08/19/action-descriptors-Suriya.html">&lt;p&gt;This paper proposes a three-stream convolutional neural network architecture for the task of action recognition in first-person videos. The three streams consist of the spatial, temporal, and &lt;em&gt;Ego&lt;/em&gt; streams. The &lt;em&gt;Ego stream&lt;/em&gt; is a two-stream architecture consisting of 2D and 3D CNN; it takes in hand mask, head motion, and saliency map for generating the class scores. The &lt;em&gt;Ego stream&lt;/em&gt; when combined with the spatial and temporal streams, achieves a 10% gain in the action recognition accuracy.&lt;/p&gt;

&lt;h3 id=&quot;ego-convnet&quot;&gt;Ego ConvNet&lt;/h3&gt;

&lt;p&gt;Following diagram shows the two-stream Ego ConvNet architecture for learning features specific to egocentric videos.&lt;/p&gt;

&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;../../../../assets/images/Suriya_CVPR_2016/Ego_ConNet.png&quot; alt=&quot;Network Architecture&quot; /&gt;
&lt;br /&gt;&lt;a href=&quot;https://www.cv-foundation.org/openaccess/content_cvpr_2016/app/S12-15.pdf&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The authors use three different input modalities for the Ego ConvNet:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Hand Mask;&lt;/li&gt;
  &lt;li&gt;Head Motion;&lt;/li&gt;
  &lt;li&gt;Saliency map.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;hand-mask&quot;&gt;Hand Mask&lt;/h4&gt;
&lt;p&gt;For generating the hand mask, authors model &lt;em&gt;local appearance&lt;/em&gt; and &lt;em&gt;global illumination&lt;/em&gt;.
Local textures for different illumination conditions are captured using 48 Gabor filters.
On the other hand, the authors perform k-means clustering on the HSV color space images’ histograms for learning the global features.
Then for each cluster, the authors train a random tree regressor.
The figure below shows some of the generated masks.&lt;/p&gt;

&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;../../../../assets/images/Suriya_CVPR_2016/hand_mask.png&quot; alt=&quot;Learned hand masks&quot; /&gt;
&lt;br /&gt;&lt;a href=&quot;https://www.cv-foundation.org/openaccess/content_cvpr_2016/app/S12-15.pdf&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;

&lt;h4 id=&quot;head-motion&quot;&gt;Head Motion&lt;/h4&gt;
&lt;p&gt;The authors attempt to create a framework that relies only on one sensor: camera.
So, in order to avoid using an eye tracker for the gaze information, the authors assume that, if the camera wearer is looking straight, then the head motion is approximately similar to the gaze information.
This motivates them to capture the head motion using 2D homography transformation of the image.&lt;/p&gt;

&lt;h4 id=&quot;saliency-map&quot;&gt;Saliency Map&lt;/h4&gt;
&lt;p&gt;If the camera is static, then by using the optical flow information one can easily find out the object being handled by the camera wearer.
However, in the case of egocentric videos, the camera is not static.
To compensate for that and to avoid using additional sensors, the authors use 2D homography for canceling the head motion in the image.
Doing this highlights the dominant motion in the scene.
Which in most of the cases is the object which is being manipulated using the hands.&lt;/p&gt;

&lt;h4 id=&quot;architecture&quot;&gt;Architecture&lt;/h4&gt;
&lt;p&gt;The first figure on this webpage shows the architecture of the Ego ConvNet.
It consists of 2D and 3D convolutional networks.
The authors use this architecture for learning the coordination actions between hands, head motion, and saliency maps.
The inputs to this network are:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Hand mask: As binary image;&lt;/li&gt;
  &lt;li&gt;Camera motion: Both x and y direction as grayscale images;&lt;/li&gt;
  &lt;li&gt;Saliency map: As grayscale image.
Authors use infogain multinomial logisitc for training the network.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;three-stream-architecture&quot;&gt;Three-stream Architecture&lt;/h3&gt;
&lt;p&gt;The authors experiment by combining the learned Ego ConvNet with the spatial and temporal stream as shown in the figure below.
By using this architecture, they are able to improve the action recognition accuracy by 10%.&lt;/p&gt;

&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;../../../../assets/images/Suriya_CVPR_2016/three-stream.png&quot; alt=&quot;Three-stream architecture&quot; /&gt;
&lt;br /&gt;&lt;a href=&quot;https://www.cv-foundation.org/openaccess/content_cvpr_2016/app/S12-15.pdf&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&quot;conclusions&quot;&gt;Conclusions&lt;/h3&gt;

&lt;p&gt;The authors achieve state-of-the-art results on &lt;a href=&quot;http://cbs.ic.gatech.edu/fpv/#gtea&quot;&gt;GTEA&lt;/a&gt;, &lt;a href=&quot;http://www.cs.cmu.edu/~espriggs/cmu-mmac/annotations/&quot;&gt;CMU Kitchens&lt;/a&gt;, &lt;a href=&quot;https://www.csee.umbc.edu/~hpirsiav/papers/ADLdataset/&quot;&gt;ADL&lt;/a&gt;, and &lt;a href=&quot;http://vision.cs.utexas.edu/projects/egocentric/index.html&quot;&gt;UTE&lt;/a&gt;.
As &lt;a href=&quot;http://cbs.ic.gatech.edu/fpv/#gtea&quot;&gt;GTEA&lt;/a&gt; is a small dataset, the authors also train the network on the Interactive Museums dataset.&lt;/p&gt;

&lt;p&gt;Some of the important observations are:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;2D and 3D network alone as Ego ConvNet shows similar performance;&lt;/li&gt;
  &lt;li&gt;Fusing 2D and 3D network as a two-stream archiecture results in performace gains;&lt;/li&gt;
  &lt;li&gt;Further fusing them with spatial and temporal streams, the authors were able to improve action recognition accuracy by 10%;&lt;/li&gt;
  &lt;li&gt;The proposed network improves upon the state-of-the-art on all the four datasets.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here are some of the samples of correctly classified examples:&lt;/p&gt;

&lt;p style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;../../../../assets/images/Suriya_CVPR_2016/results.png&quot; alt=&quot;Results&quot; /&gt;
&lt;br /&gt;&lt;a href=&quot;https://www.cv-foundation.org/openaccess/content_cvpr_2016/app/S12-15.pdf&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&quot;references&quot;&gt;References&lt;/h3&gt;
&lt;ol&gt;
  &lt;li&gt;First Person Action Recognition Using Deep Learned Descriptors. &lt;a href=&quot;https://www.cv-foundation.org/openaccess/content_cvpr_2016/app/S12-15.pdf&quot;&gt;[Paper]&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;GTEA. &lt;a href=&quot;http://cbs.ic.gatech.edu/fpv/#gtea&quot;&gt;[Link]&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;CMU Kitchens. &lt;a href=&quot;http://www.cs.cmu.edu/~espriggs/cmu-mmac/annotations/&quot;&gt;[Link]&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;ADL. &lt;a href=&quot;https://www.csee.umbc.edu/~hpirsiav/papers/ADLdataset/&quot;&gt;[Link]&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;UTE. &lt;a href=&quot;http://vision.cs.utexas.edu/projects/egocentric/index.html&quot;&gt;[Link]&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;</content><author><name></name></author><category term="Paper_summary" /><summary type="html">This paper proposes a three-stream convolutional neural network architecture for the task of action recognition in first-person videos. The three streams consist of the spatial, temporal, and Ego streams. The Ego stream is a two-stream architecture consisting of 2D and 3D CNN; it takes in hand mask, head motion, and saliency map for generating the class scores. The Ego stream when combined with the spatial and temporal streams, achieves a 10% gain in the action recognition accuracy.</summary></entry></feed>