Skip to main content

Posts

Showing posts from November, 2018

CST 205 - Week 5

Our team completed its first project this week, and it's absolutely epic adventure. Not only was it an epic adventure full of sweat, keyboard strokes, and debugging to make it, but the end result is something I'm very proud of. You can find it here. Try running it yourself without looking at the source code! https://github.com/rdorrity/lab-12 My Python skills improved greatly this week, and I feel like I'm beginning to understand the more subtle and complex aspects of the language. However, as with most programming languages, I still consider myself a novice in training, and I'll probably continue to learn and practice for the rest of my programming career. I had a great time working on this project, and I'm looking forward to more group assignments. 

CST 205 - Week 4

This week was a very busy week for class! Our team successfully completed two sound labs, a string lab, and my pair programmer/teammate/teacher extraordinaire Sara and I finished our midterm project, which was to create two Instagram/Photoshop style filters. One of these filters was to create a "CSUMB" filter and the other was our own choice. Here's the two posters that explain what these filters do.  Sara's bird is featured prominently as a model. I feel like this poster is very aesthetic. Additionally, we learned how to work with sound files this week. I found working with sound files slightly more difficult than images since there are more parameters involved, but I found the end result much more satisfying once done right. Maybe it's because I've been a musician my whole life(although I am in a extended hiatus currently), or because I've always been interested in sampling or finding out where samples in songs originate from.  As I said

CST 300 - Week 3

This week, I completed a lab where we combined three images into one to make a custom Thanksgiving card. Here's my take on it: I made a parody of a classic American painting, Freedom from Want , by Norman Rockwell. I remember seeing this painting as a kid in restaurants around this time of year, and it always stuck to me as the quintessential image of Thanksgiving. Apparently, I'm not the only one as there have been plenty of parodies done over the years. I was having some difficulty with the chroma key functions from the lab this week, but after watching some of the demo videos other students made I think I understand how to implement one much better. I wonder if there's a way in JES to work with alpha channels directly, like in any non-destructive image editing program (GIMP, Photoshop). That would be a huge quality of life improvement, in my opinion. It looks like we're moving onto working with audio files next week, but I enjoyed learning the technicalities

CST 205 Portfolio

Image Manipulations using JES This is a showcase of the various image manipulation functions I've written, or worked on with SCSI Logic, from the labs I've done so far in 205. Rose Colored Glasses This function reduces the green and blue values of each pixel in the picture in order to give it pink overtones, and then repaints the target photo.   Better Black and White This function turns a photo into grayscale by multiplying the RGB values of each pixel by certain weights in order to get an average of each pixel. In turn, this value is the luminance of each pixel. These new values are then applied to the existing original pixels. Negative Turns a photo into its negative by subtracting the RGB value of each pixel from the maximum value allowed (255, since the RGB model is an 8-bit model). JES's wrap around overflow is on by default, which prevents potential errors due to integer under/overflow. Mirror - Bottom to Top Mirrors

CST 205 - Week 2

This week was all about image manipulation using JES and Python. While I learned last week about the RGB model of color and how it affects pixels in a digital image, the assignments this week were all about "physical" manipulation, such as shrinking, resizing, copying, and applying some fun effects such as mirroring and creating negatives.  Although I'm beginning to get a good grasp of JES and Jython, I still had some difficulty with the collage part of Lab 5. My original plan was to create a dynamic resizing function that would take in any number of images and then resize them if necessary to fit within the blank "canvas's" bounds. My first thought was to implement some sort of pixel edge detection, but unfortunately I could not get it to work. I had to resort to resizing all my images in to a fixed size, applying a random effect, and then copying it to the final collage.  I'd like to see a solution that uses a dynamic resizing/scaling algorithm as