About the Website

This is a website I created to share my current and ongoing interests. My once dreaded but now favorite field of mathematics, linear algebra, is the basis of much of the exploration done here. A foundation of the field lies in matrices and their extensive applications. What initially started out as a quest to find applications to matrices directly, resulted in stumbling across images, or simply matrices containing many RGB values. The parrellel of matrices and images being comprised of the very same structure led me down the road of image processing and the governing operations on colors, color channels, and the grid like structure of images themselves. My goal now is to apply Machine Learning/Data Science concepts to images while continuing to explore matrix theory, linear algebra, and computer vision. To begin and assist me on much of this exploration, I created a matrix operations library and image operations library whose contents I will explain below. Head to the Explored Topics Tab to learn more!

Tools and Libraries Used

  • Python for all featured topics
  • MatplotLib and pyplot
  • Numpy
  • Pandas
  • PIL
  • Sklearn.linear_model and LinearRegression
  • Sklearn.preproccessing and Polynomial Features
  • Html and CSS to build this website
  • Overleaf for mathematical content and illustrations
  • Matrix Operations Library Functions

  • Create an identity Matrix with specified scalar on the diagonal
  • Transpose of a matrix
  • Matrix-Matrix Multiplication
  • Matrix-Vector Multiplication
  • 2D rotation matrices
  • 3D rotation matrices based on specified axis
  • 2-Norm between two vectors
  • Image Operations Library Functions

  • Scale an Image by a chosen factor (4 implies image is 1/4th of original size)
  • Convert an image to grey-scale
  • Convert an image to black and white
  • Add an intensity color channel to each pixel in an image
  • Rotating an Image by a given theta (angel of rotation)
  • Some Final Remarks

    Prior to implementing most, if not all of the operations on images, the image being used needed to be scaled by some factor. This is becuase the time complecity to complete matrix computations increases very rapidly as matrices get larger. Next one could combine the functions presented on this website in many different ways. For example, rotate a scaled, blurry, red shaded image instead of doing each operation independently. The possiblities greatly exceed what is presented!