<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ref="http://purl.org/rss/1.0/modules/reference/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://purl.org/rss/1.0/">
	<channel rdf:about="http://angelica.cs.umanitoba.ca/~maryna/rss.rdf">
		<title>COMP 4520 Journal</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php</link>
		<description><![CDATA[No Footer]]></description>
		<items>
			<rdf:Seq>
				<rdf:li resource="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141122-233611" />
				<rdf:li resource="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141113-144722" />
				<rdf:li resource="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141102-183103" />
				<rdf:li resource="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141030-021616" />
				<rdf:li resource="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141030-012101" />
				<rdf:li resource="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141015-004944" />
				<rdf:li resource="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141001-213434" />
				<rdf:li resource="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry140924-101123" />
				<rdf:li resource="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry140918-182420" />
				<rdf:li resource="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry140917-143226" />
			</rdf:Seq>
		</items>
	</channel>
	<item rdf:about="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141122-233611">
		<title>Forward propagation</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141122-233611</link>
		<description><![CDATA[So the forward propagation is ready and working. Unfortunately, due to memory constraints, I had to change the network structure a bit.<br /><br />One 60x60 sample is processed by a 2x2 group of processors. Given that Parallella can have 4x4 or 8x8 grids, this allows 4 or 16 groups respectively work independently either on different samples, or on the same sample rotated (but that&#039;s for another post).<br /><br />Now by layers:<br /><br />Layer 0: each processor has 30x30 chunk of the image.<br /><br />Layer 1: 16 5x5 filters are applied + 2x2 max-polling: output 14x14x16.<br /><br />Layer 2: 32 5x5x16 filters + 2x2 max-polling: output 6x6x32.<br /><br />Layer 3: 48 3x3x32 filters are applied + 2x2 max-polling: output 3x3x48 with overlap. The size of the full matrix at this stage is 5x5x48.<br /><br />Layer 4: 64 3x3x48 convolutions. In the paper, this is unshared convolution, so that at each spot the weights are different. I am still not sure whether I will do it unshared, or replace by a regular convolution. TECHNICALLY the amount co computation on each core is unchanged, but the amount of data that has to be copied back and forth between ARM and Epiphany is ginormous... So regular convolution for now.<br />Also, since this layer a) doesn&#039;t have max-polling, b) is followed by fully-connected layer and c) the input is already so small in spatial dimensions, the partitioning of the output is a bit different now. Instead of each core applying the same filter to its chunk of data, it will now apply DIFFERENT filters to the FULL matrix. So, in the output each core will have a 3x3x16 chunk of a full 3x3x64 matrix.<br /><br />Given that the output of every layer has to be preserved for the back-propagation, we have:<br /><br />(30x30x1 + 14x14x16 + 6x6x32 + 3x3x48 + 3x3x16)*(4 bytes) = 22.5 kb<br /><br />Out of 32 :(<br /><br />Hope I have enough memory to do backpropagation without swapping out stuff :(]]></description>
	</item>
	<item rdf:about="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141113-144722">
		<title>As a very quick update</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141113-144722</link>
		<description><![CDATA[Within the last week or so<br />- downloaded the datasets that were used in 300 Faces in the Wild.<br />- implemented basic functions like image pre-processing, convolution + maxpooling etc.<br /><br />Still not sure what to do with unshared convolution, plus there are some other questions that were not specified in the paper.<br /><br />Will put together more about use of shared memory when I have time.]]></description>
	</item>
	<item rdf:about="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141102-183103">
		<title>The board</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141102-183103</link>
		<description><![CDATA[So the board works fine, and apparently worked fine all the way.<br /><br />Except for the USB bug. Apparently to get USB working I&#039;ll need to vandalize a USB cable.<br /><br />Might try that some time, but for now I&#039;ve connected it to my home router and SSH&#039;ed into it. Examples run fine, now trying simple stuff of my own...]]></description>
	</item>
	<item rdf:about="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141030-021616">
		<title>Some papers I&#039;ve been reading</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141030-021616</link>
		<description><![CDATA[Last week was quite busy with midterms (plus there was nobody in the lab, and I don&#039;t have keys :) so I wasn&#039;t able to start fiddling with the board. Instead, since there is an obvious winner among the algorithms, I decided to start looking at it.<br /><br />The basis is described here: <a href="http://research.faceplusplus.com/face-research-paper-in-iccv2013/" >http://research.faceplusplus.com/face-r ... -iccv2013/</a>. In short, it uses the cascade of deep convolutional neural networks. Since I&#039;m not doing face recognition and don&#039;t need to know the exact shape of an eyebrow, I will only need the first two, at most three.<br /><br />A few papers that might be useful:<br />Interesting paper on <a href="http://arxiv.org.proxy2.lib.umanitoba.ca/abs/1404.5997" >parallelizing the ConvNet</a><br />Not ConvNet, but <a href="http://informahealthcare.com.proxy2.lib.umanitoba.ca/doi/pdfplus/10.3109/0954898X.2012.733842" >a lot of implementation details on GPU</a>.<br />On <a href="http://arxiv.org.proxy2.lib.umanitoba.ca/abs/1312.6186" >training ConvNets</a><br />Another <a href="http://link.springer.com/article/10.3103%2FS1060992X11020032" >implementation of a Neural Net on GPU</a><br />]]></description>
	</item>
	<item rdf:about="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141030-012101">
		<title>Nicer test result view</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141030-012101</link>
		<description><![CDATA[<a href="javascript:openpopup('http://angelica.cs.umanitoba.ca/~maryna/images/results.png',560,420,false);"><img src="http://angelica.cs.umanitoba.ca/~maryna/images/results.png" width="500" height="375" alt="" /></a><br /><br />The image set can be downloaded from <a href="http://angelica.cs.umanitoba.ca/~maryna/data/data.rar" >here</a>.<br />Full test results as <a href="http://angelica.cs.umanitoba.ca/~maryna/data/testing_details.xlsx" >Excel file</a>.]]></description>
	</item>
	<item rdf:about="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141015-004944">
		<title>Test results</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141015-004944</link>
		<description><![CDATA[It has taken more time than I anticipated, partly because I wasn&#039;t able to do much during IAC, partly because the existing face detection demos are often hard to find/hard to setup/no longer can be found where they were supposed to be etc. As a result, out of the programs I found, I was only able to test 6. Just to be sure I&#039;ve mentioned it, I have also removed a few images from the dataset, since they were almost repeats, which I somehow haven&#039;t noticed initially.<br /><br />The short results are below. Just as a quick comment, due to the complexity of the dataset, several algorithms actually got negative score. That was expected, since these algorithms could&#039;t detect faces at arbitrary angles.<br /><br />-FceOnIt ( <a href="http://www.idiap.ch/technology-transfer/demonstrations/faceonit" >http://www.idiap.ch/technology-transfer ... s/faceonit</a> ) - 80 hits, 149 misses, 0 false positives, total score = -69<br />-Real Time Face detector from A. Telnykh ( <a href="http://www.torry.net/authorsmore.php?id=6639" >http://www.torry.net/authorsmore.php?id=6639</a> ) using tilt face detector - 99 hits, 130 misses, 51 false positive, total score = -81<br />-OpenCV with Haar features - 96 hits, 133 misses, 50 false positives, ts = -87<br />-OpenCV with LBP features - 90 hits, 139 misses, 137 false positives, ts = -186<br />-BetaFace ( <a href="http://betaface.com/wpa/index.php/demo-gallery" >http://betaface.com/wpa/index.php/demo-gallery</a> ) - 146 hits, 83 misses, 59 false positives, ts = 4<br />-Face++ ( <a href="http://www.faceplusplus.com/demo-detect/" >http://www.faceplusplus.com/demo-detect/</a> ) - 139 hits, 90 misses, 3 false positives, ts = 46<br /><br />So out of these six, I have an obvious winner.<br /><br />More generally, the algorithms that detect facial features (eyes, nose, mouth etc) - the two last ones - performed much better than the other ones, mainly because they can handle tilted faces. Since for my application it is a must, I suppose that is what I should be focusing on.<br /><br />I will post more detailed results once I get them into a nicer format...<br /><br />--------<br />The programs that I wanted to try but couldn&#039;t are:<br />-Stasm from U of Capetown - <a href="http://www.milbo.users.sonic.net/stasm/" >http://www.milbo.users.sonic.net/stasm/</a> - require specific version of OpenCV that no longer can be downloaded from anywhere<br />-Face detection from U of Illinois - <a href="http://www.ifp.illinois.edu/~antonio/Demo/SelectImage.html" >http://www.ifp.illinois.edu/~antonio/De ... Image.html</a> - whatever image I gave it, just says that it couldn&#039;t recognize the format<br />-Online Face Detector from here: <a href="http://www.idiap.ch/~marcel/professional/Welcome.html" >http://www.idiap.ch/~marcel/professional/Welcome.html</a> - (apparently similar to FaceOnIt) - needs admin login (weird...)<br />-FDLib - <a href="http://people.kyb.tuebingen.mpg.de/kienzle/fdlib/fdlib.htm" >http://people.kyb.tuebingen.mpg.de/kien ... /fdlib.htm</a> - they only have precompiled old 32-bit dlls that I couldn&#039;t get to run.<br /><br />P.S. Detailed data now posted.]]></description>
	</item>
	<item rdf:about="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141001-213434">
		<title>Final dataset</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry141001-213434</link>
		<description><![CDATA[The final dataset composition:<br /><br />120 images taken in the lab<br />90 images of dolls from internet<br />10 photos from actual rescue missions<br />80 images of rubble, wood, boxes etc.<br />-------<br />300 in total.<br /><br />Will post the info about the testing when I return from the International Astronautical Congress in Toronto.]]></description>
	</item>
	<item rdf:about="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry140924-101123">
		<title>Forming image set</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry140924-101123</link>
		<description><![CDATA[Images of the victims taken yesterday, total ~140, ranging from easy to trickier.<br /><br /><a href="javascript:openpopup('http://angelica.cs.umanitoba.ca/~maryna/images/IMG_3541.JPG',1936,2592,false);"><img src="http://angelica.cs.umanitoba.ca/~maryna/images/IMG_3541.JPG" width="150" height="201" alt="" /></a><a href="javascript:openpopup('http://angelica.cs.umanitoba.ca/~maryna/images/IMG_3624.JPG',1936,2592,false);"><img src="http://angelica.cs.umanitoba.ca/~maryna/images/IMG_3624.JPG" width="150" height="201" alt="" /></a><a href="javascript:openpopup('http://angelica.cs.umanitoba.ca/~maryna/images/IMG_3598.JPG',1936,2592,false);"><img src="http://angelica.cs.umanitoba.ca/~maryna/images/IMG_3598.JPG" width="150" height="201" alt="" /></a><br /><br />If I cannot find enough pictures online to increase the set size to at least ~500, I will need to buy a few more dolls, because that is about all non-repeats I can get with these three.]]></description>
	</item>
	<item rdf:about="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry140918-182420">
		<title>It works!</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry140918-182420</link>
		<description><![CDATA[<a href="javascript:openpopup('http://angelica.cs.umanitoba.ca/~maryna/images/image.jpg',2592,1936,false);"><img src="http://angelica.cs.umanitoba.ca/~maryna/images/image.jpg" width="400" height="299" alt="" /></a><br /><br />Well, kinda. Good news: it boots.<br /><br />Bad news: usb doesn&#039;t work. Todo: double check the drivers.]]></description>
	</item>
	<item rdf:about="http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry140917-143226">
		<title>Victims</title>
		<link>http://angelica.cs.umanitoba.ca/~maryna/index.php?entry=entry140917-143226</link>
		<description><![CDATA[<a href="javascript:openpopup('http://angelica.cs.umanitoba.ca/~maryna/images/dolls.jpg',2592,1936,false);"><img src="http://angelica.cs.umanitoba.ca/~maryna/images/dolls.jpg" width="400" height="299" alt="" /></a><br /><br />Dolls from Value Village, seemed the most similar to the ones used in the competition.]]></description>
	</item>
</rdf:RDF>
