Difference between revisions of "Team:UNOTT/Software"

 
(2 intermediate revisions by the same user not shown)
Line 230: Line 230:
 
   <div class="expandable-boxes">
 
   <div class="expandable-boxes">
 
     <div class="expandable-box">
 
     <div class="expandable-box">
       <h4 style="color: #ffffff; font-weight: bold; font-size: 30px;">Overview </h4><center>
+
       <h4 style="color: #ffffff; font-weight: bold; font-size: 30px;">Overview </h4>
 
<h5 style="color: #C0C0C0; font-weight: bold; font-size: 20px;"> About our software and why iGEM Nottingham chose to produce it</h5>
 
<h5 style="color: #C0C0C0; font-weight: bold; font-size: 20px;"> About our software and why iGEM Nottingham chose to produce it</h5>
</center>
+
 
  
 
       <div id="clear2" style="display: none;">
 
       <div id="clear2" style="display: none;">
Line 254: Line 254:
 
<h4 style="color: #ffffff; font-weight: bold; font-size: 30px;">Image Comparison Software</h4>
 
<h4 style="color: #ffffff; font-weight: bold; font-size: 30px;">Image Comparison Software</h4>
 
<h5 style="color: #C0C0C0; font-weight: bold; font-size: 20px;"> Comparing images of spectra from two different colonies to check for similiarity </h5>
 
<h5 style="color: #C0C0C0; font-weight: bold; font-size: 20px;"> Comparing images of spectra from two different colonies to check for similiarity </h5>
<center></center>
 
 
   <div id="clear3" style="display: none;">
 
   <div id="clear3" style="display: none;">
 
     <p> <a href="https://github.com/BurgundyIsAPublicEnemy/iGEMNotts2017/blob/master/fl_compare.exe">Download the software here</a> </p>
 
     <p> <a href="https://github.com/BurgundyIsAPublicEnemy/iGEMNotts2017/blob/master/fl_compare.exe">Download the software here</a> </p>
Line 262: Line 261:
 
<p> Using data from wet lab, a graph can be produced. This graph could be compared using an image similarity algorithm to check the difference between a data set from a certain time point to another data set from another time point.This was very important to the project as it allowed us to compare the fluorescence spectra of one random construction at different time periods.  </p>
 
<p> Using data from wet lab, a graph can be produced. This graph could be compared using an image similarity algorithm to check the difference between a data set from a certain time point to another data set from another time point.This was very important to the project as it allowed us to compare the fluorescence spectra of one random construction at different time periods.  </p>
  
<p>The image (a bitmap) is scanned pixel by pixel and written into a temporary file where it is checked for similarity with another image using the Damerau - Levenshtein Distance algorithm which was coded in C#. This can be represented as such <sup> 1 </sup>: </p>
+
<p>The image (a bitmap) is scanned pixel by pixel and written into a temporary file where it is checked for similarity with another image using the Damerau - Levenshtein Distance <sup> 1 </sup> algorithm which was coded in C#.
 
+
<p style="text-align: center;" > Figure 1 </p>
+
<img src="https://static.igem.org/mediawiki/2017/0/0e/T--UNOTT--DLD.svg" align="middle" width="600" height="100" >
+
  
 
<br> </br>
 
<br> </br>
Line 271: Line 267:
 
<br> </br>
 
<br> </br>
 
<center>  
 
<center>  
<p style="text-align: center;"> Figure 2 - Software when first opened </p>
+
<p style="text-align: center;"> Software when first opened </p>
 
</center>  
 
</center>  
 
<br> </br>
 
<br> </br>
Line 277: Line 273:
 
<br> </br>
 
<br> </br>
  
<p style="text-align: center;" > Figure 3 - When files are selected and "Compare" is clicked </p>
+
<p style="text-align: center;" > When files are selected and "Compare" is clicked </p>
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/2/21/T--UNOTT--LucyGraph1.png" class="border" align="middle" width="400" height="400" > </p>
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/2/21/T--UNOTT--LucyGraph1.png" class="border" align="middle" width="400" height="400" > </p>
 
<br> </br>
 
<br> </br>
  
<p style="text-align: center;" > Figure 4 - The files are too dissimilar! Access isn't allowed. </p>
+
<p style="text-align: center;" > The files are too dissimilar! Access isn't allowed. </p>
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/f/f0/T--UNOTT--LucyGraph2.png" class="border" align="middle" width="400" height="400" > </p>
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/f/f0/T--UNOTT--LucyGraph2.png" class="border" align="middle" width="400" height="400" > </p>
 
<br> </br>
 
<br> </br>
  
<p style="text-align: center;" > Figure 5 - Changing the threshold might accommodate this difference </p>
+
<p style="text-align: center;" >  Changing the threshold might accommodate this difference </p>
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/2/2b/T--UNOTT--LucyGraph3.png" class="border"  width="400" height="400" > </p>
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/2/2b/T--UNOTT--LucyGraph3.png" class="border"  width="400" height="400" > </p>
 
<br> </br>
 
<br> </br>
Line 300: Line 296:
 
     <div class="expandable-box">
 
     <div class="expandable-box">
  
       <h4 style="color: #ffffff; font-weight: bold; font-size: 30px;">Key.Coli Verification </h4><center>
+
       <h4 style="color: #ffffff; font-weight: bold; font-size: 30px;">Key.Coli Verification </h4><h5 style="color: #C0C0C0; font-weight: bold; font-size: 20px;"> Comparing the raw data of two different colonies straight from the fluorescence reader</h5>
<h5 style="color: #C0C0C0; font-weight: bold; font-size: 20px;"> Comparing the raw data of two different colonies straight from the fluorescence reader</h5>
+
</center>
+
 
   <div id="clear4" style="display: none;">
 
   <div id="clear4" style="display: none;">
 
     <p> Another method of comparing fluorescence spectra is by taking raw data and comparing them cell by cell. During the development of the software, the team found that the data held the same format in terms of spacing when outputted by the fluorescence reader. This made it far easier to write a data comparison algorithm.</p>  
 
     <p> Another method of comparing fluorescence spectra is by taking raw data and comparing them cell by cell. During the development of the software, the team found that the data held the same format in terms of spacing when outputted by the fluorescence reader. This made it far easier to write a data comparison algorithm.</p>  
Line 361: Line 355:
 
<p> This was implemented through the use of For Loops to cycle through an array of data points. This was done only with the mother colony to create a threshold for each data point. This was done by using the Polynomial Fit to output an equation for the fit which used a variable X as it's input. X was simply substituted for the data point value that was used to create the fit to create a threshold value. This threshold value could be adjusted by adding or subtracting from it. The Key.Coli intensity was compared to this threshold value using Selection statements; if the key colony's data point wasn't within the upper limit or lower limit, they were locked out. The team decided it would be appropriate to use Polynomial Fitting as it was found to follow the points the closest when graphed in Excel.  </p>
 
<p> This was implemented through the use of For Loops to cycle through an array of data points. This was done only with the mother colony to create a threshold for each data point. This was done by using the Polynomial Fit to output an equation for the fit which used a variable X as it's input. X was simply substituted for the data point value that was used to create the fit to create a threshold value. This threshold value could be adjusted by adding or subtracting from it. The Key.Coli intensity was compared to this threshold value using Selection statements; if the key colony's data point wasn't within the upper limit or lower limit, they were locked out. The team decided it would be appropriate to use Polynomial Fitting as it was found to follow the points the closest when graphed in Excel.  </p>
  
<p style="text-align: center;" > Figure 8: The system won't let the user in as the colonies are too different </p>  
+
<p style="text-align: center;" > The system won't let the user in as the colonies are too different </p>  
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/3/38/T--UNOTT--rd1.png" class="border" width="600" height="400" > </p>  
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/3/38/T--UNOTT--rd1.png" class="border" width="600" height="400" > </p>  
  
  
<p style="text-align: center;" > Figure 9: The system lets the user in as the colonies are nearly identical and falls within threshold </p>  
+
<p style="text-align: center;" > The system lets the user in as the colonies are nearly identical and falls within threshold </p>  
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/b/bc/T--UNOTT--rd2.png" class="border" width="600" height="400" > </p>  
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/b/bc/T--UNOTT--rd2.png" class="border" width="600" height="400" > </p>  
  
Line 396: Line 390:
 
<p> The simulation supports command line interface for these inputs. When parameters are set, the program will calculate the expected fluorescence over time. This will be outputted as shown on below. </p>
 
<p> The simulation supports command line interface for these inputs. When parameters are set, the program will calculate the expected fluorescence over time. This will be outputted as shown on below. </p>
 
<p> &nbsp; </p>
 
<p> &nbsp; </p>
<p style="text-align: center;" > Figure 7 </p>  
+
<p style="text-align: center;" > Lucifer Fluorescence Simulator running </p>  
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/a/a9/T--UNOTT--Lucy2.png" class="border" width="400" height="400" > </p>  
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/a/a9/T--UNOTT--Lucy2.png" class="border" width="400" height="400" > </p>  
 
<p> &nbsp; </p>
 
<p> &nbsp; </p>
Line 441: Line 435:
 
<p> As a final wrap up for the project, all the software and modeling was put together to create an additional security layer on top of Linux for the Raspberry Pi. A Raspberry Pi is a super low budget low-end computer which is favoured by enthusiasts and computer hobbyists which is designed to be programmed easily for, as the hardware comes unlocked. The reason we chose this was because it would give us the least issues when it came to editing the security protocols of Linux.  <p>
 
<p> As a final wrap up for the project, all the software and modeling was put together to create an additional security layer on top of Linux for the Raspberry Pi. A Raspberry Pi is a super low budget low-end computer which is favoured by enthusiasts and computer hobbyists which is designed to be programmed easily for, as the hardware comes unlocked. The reason we chose this was because it would give us the least issues when it came to editing the security protocols of Linux.  <p>
 
<br> </br>
 
<br> </br>
<p style="text-align: center;" > Figure 9 </p>  
+
<p style="text-align: center;" > Raspberry Pi </p>  
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/4/4a/T--UNOTT--rpi.jpeg" class="border" width="400" height="400" > </p>  
 
<p style="text-align: center;" > <img src="https://static.igem.org/mediawiki/2017/4/4a/T--UNOTT--rpi.jpeg" class="border" width="400" height="400" > </p>  
  

Latest revision as of 03:58, 2 November 2017





SOFTWARE

Overview

About our software and why iGEM Nottingham chose to produce it

Image Comparison Software

Comparing images of spectra from two different colonies to check for similiarity

Key.Coli Verification

Comparing the raw data of two different colonies straight from the fluorescence reader

Fluorescence Spectra Simulation

Simulating fluorescence spectra from given protein concentrations

Random Number Generation

Generating random numbers from our randomly constructed colonies

Linux Key.Coli Security Layer

Porting our comparison software to low end hardware to safeguard a system