Archive for the 'Teaching' Category

Lecture: Biomedical applications using the grid

For my CE21 B students:  Those who were not able to attend the lecture may find the lecture slides on the course website. montagnat-grid.pdf

Title:  Biomedical applications using the grid
Speaker:  Johan Montagnat, Ph.D

Abstract:

With the generalization of digital imaging in medicine and the emergence of ever growing medical archives, efficient tools for retrieving clinically relevant data are needed. Medical images are usually indexed with medical records (patient information, acquisition parameters, etc.) but for applications such as epidemiology or diagnostic assistance, images also need to be identified from their content. Content-based image retrieval in medical databases is challenging both in terms of computing power (size of image databases, complexity of algorithms) and in terms of performance of image content analysis algorithms (difficulty to identify relevant features in medical images).
Our research project is addressing the problem of content-based medical image retrieval in large databases. We are exploiting grids to tackle the computational requirement of this problem. We developed strategies to optimize the load distribution over the very large scale EGEE (Enabling Grids for E-sciencE) grid infrastructure, taking into account its properties and load. We have explored several
strategies to identify relevant images. Texture features extracted using Gabor filters proved to be an efficient and relevant mean of indexing medical databases. The texture feature could be correlated to image modality, tissues, and subtle changes such as myocardium tissues variation using the cardiac cycle.

About the Speaker:

Dr. Johan Montagnat has obtained his PhD in Computer Science (with highest honors) from the University of Nice-Sophia Antipolis (France). He is currently a research scientist at the French National Center for Scientific Research (CNRS), working in the fields of medical image processing and grid computing. Dr. Montagnat is a co-principal investigator of the ONCO-MEDIA project ( http://www.onco-media.com), an international research collaboration on biomedical applications of grid computing, wherein Ateneo de Manila University is one of the partner institutions.

Technorati Tags: , ,

Audio amplifier goodness

For the third and fourth activity in my TCOM 121.2 Telecommunications laboratory class, I asked the students to prepare a 200 gain (46 dB) audio amplifier using the LM386 with a bandwidth of 20-20kHz.

I required the students to perform simulations by creating a SPICE netlist. The learning curve required is very steep to meet a 1-2 week deadline for performing the activity. I pointed them to the sci.electronics.cad Usenet newsgroup to search from the SPICE .subckt model since the IC cannot be found by default in the library components of MultiSim or Electronics Workbench. There were sample demonstrations on how to generate the netlist and use the model file using LTSpice in the laboratory. My classes’ were very resourceful. To accomodate the steep learning curve, they were able to find an LTSpice symbol associated with the LM386 subckt model and was able to generate simulations using the conventional schematic capture method.

They implemented their audio amplifier circuits on a standard issued prototyping breadboard. Some were able to get gains of up to 190+ but others are still struggling to exceed a 3dB gain (hence the lab extension). After reaching the 43-46 dB gain milestone, they celebrated their accomplishment by playing with the circuit. Most of the students plugged the output of the amplifier to a speaker. Thus sounds were produced based on the frequency input in the function generator. One of my students, Dale Dy played a rendition of “Happy Birthday” using various frequencies from our signal generator and his groups’ LM386 Audio Amplifier:

Technorati Tags: , , ,

Lecture notes on iteration

For my CE 21 class. The problem discussed earlier was, draw a triangle of stars given the length for a side of the triangle n. It can be illustrated as follows for n = 3.

*
* *
* * *

The next task is to center the triangle:

  *
 * *
* * *

Then we want to be able to print a diamond

  *
 * *
* * *
 * *
  *

This C++ code is one of the solutions to the problem:

#include <iostream>
int main()
{
  int n;
  std::cin &gt;&gt; n;
  int i = 1;
  // upper triangle
  while( i &lt;= n )
  {
    int space = n - i;
    for(int j = 1 ; j &lt;= space ; j++ )
    {
      std::cout &lt;&lt; " ";
    }
    int j = 1;
    while( j &lt;= i )
    {
      std::cout &lt;&lt; "* ";
      j++;
    }
    std::cout &lt;&lt; std::endl;
    i++;
  }
  // lower triangle
  i = n - 1;
  while( i &gt;= 1 )
  {
    int space = n - i;
    for(int j = 1 ; j &lt;= space ; j++ )
    {
      std::cout &lt;&lt; " ";
    }
    int j = 1;
    while( j &lt;= i )
    {
      std::cout &lt;&lt; "* ";
      j++;
    }
    std::cout &lt;&lt; std::endl;
    i--;
  }
  return 0;}

For the homework, answer the Challenge section of the lecture slides on iterations:

  • Draw a pine tree with 3 sections
  • Each section should have n lines of stars
  • The start of the next section should have one less star than the end of the previous section
  • Add n lines of single asterisks for a stand

Example for n = 3:

      *
     * *
    * * *
     * *
    * * *
   * * * *
    * * *
   * * * *
  * * * * *
      *
      *
      *

Technorati Tags: , , , ,

Installing MSYS and MinGW

cThese are installation instructions for my CE 21: Introduction to Computing class so that students will be able to install the compilers on their systems at home.
Download the following files from the MinGW website:

  • MSYS-1.0.10.exe
  • binutils-2.16.91-20060119-1.tar.gz
  • gcc-core-3.4.2-20040916-1.tar.gz
  • gcc-g++-3.4.2-20040916-1.tar.gz
  • mingw-runtime-3.12.tar.gz
  • w32api-3.9.tar.gz

Base installation files

Assuming that the students downloaded them on their desktop as described in the screenshot above, the video below shows the details of installing MSYS. Take note the the installation directory is c:\msys and not c:\msys\1.0.

The next step is to extract the 5 tarballs (via tar -xvzf) in the /mingw directory. Open the MSYS terminal and use the next video as a guide.

Technorati Tags: , , ,