Week#4 – Loading Data

 

For this particular assignment I wasn’t quite set on the concept. Again, I was more worried about the coding aspect of this assignment that I guess I didn’t have the luxury to be thinking about its aesthetics and data visualization. I do think that my specific way of visualising data was ineffective in the sense that its unable to tell us anything and its unclear what part of the data I’m visualising but nonetheless I used this assignment as a meek approach to solidifying my previous knowledge on object-oriented programming whilst incorporating a new knowledge of json!

Prior to this, I had seen a poster with lines being dispersed outwards similar to that of comics – as a means to depict emphasis. So, I tried to recreate this but ended up with a slightly altered result with a befitting meaning: fireworks. …Now that I’m reevaluating my process in determining an aesthetic by writing this post, I’m currently kicking myself because I just thought of a much better design that would probably make for a more solid conceptual idea which incidentally, would have been easier to code…

I used my previous assignment on object-oriented programming as a reference to creating the code for this piece since it incorporated the use of classes. I created and formatted my own json file data which included a few picks of my favourite songs, which more specifically outlined artist names, song titles and number of replays. I thought fireworks were a good embodiment of the explosion of emotions I felt when listening to music and the only way to cement this would be to link it to the number of replays a song has. The piece of code I’m most proud of is my use of map():

this.minLength = map(replays, 0, 250, 20, 100);
this.maxLength = map(replays, 0, 250, 40, 130);

I had the hardest time linking a specific range of replay numbers to min/max lengths so I ended up spending almost an hour looking for a solution using google, youtube and reddit. Ironically the solution was in my notes the whole time and so whilst it was a frustrating process, I was just glad that it was over and done with. Now comes the improvements…
One thing that I must criticise is the design choice. It isn’t my best work if not the worst.

1) Rather than randomising the position of each firework object, it would’ve been better to give it a static position so that each firework is given enough space for easy visualisation. With randomisation, every time the sketch is refreshed, it could be that the firework objects appear to be on top of each other, making size differentiation difficult. 2) To mimic actual fireworks, each firework object could appear and fade from their designated position. This would continue on as a loop. 3) Each firework object signifies a certain song within the json file, therefore to give it more distinction and meaning, each song could have had its own colour to signify the specific emotion I would feel when listening to the song.

Week 4 – Data

For the week 4 assignment I decided to give a visual representation of the five most successful A24 movies in 2023, by using a bar chart and a csv file containing the 200 most successful movies of 2023. The chart displays the rank of the movie, the total gross, and the title. For the concept I took inspiration from Jacob Rivkin on his video of working with basic data on YouTube.

Week 5 – Reading Reflection

After reading the paper, what I find most interesting is the methods used for computer vision and how simple they actually are. I always thought computer vision requires a significant amount of different complex algorithms, but it turns out to be as simple as comparing pixels one by one at different times. However, I still have no idea how arrays of pixels (how algorithms interpret images or videos) can be used to gain advanced information such as “tracking the orientation of a person’s gaze.”

I also find it interesting how these techniques can be applied to interactive media art. The way it makes artwork interactive is not making the viewer touch buttons whatsoever, but only move around and see what happens. This method of interactivity gives the viewer more freedom to explore what lies beyond the artwork, instead of just playing within the set of rules the artist sets. It also gives viewers an urge to explore the artwork more because they feel freedom when participating in the artwork. They would want to try out different ways of interaction and see what happens, and that’s what I find most interesting about computer vision used in interactive art pieces.

reading reflection: week 5

Reading this article, what I picked up was this: “it took computer scientists a few decades to figure this out, but now you get to play around with it too.” At the beginning, the author states how computer vision used to be a domain exclusive to specialists, such as the military or law-enforcement. Then at the end, there’s the appendix with the sample processing code that even “novice programmers” could use to kick-start a computer vision project “in as little as an afternoon”. This is grounds for celebration because, by lowering the barrier to entry here, we have democratized the technologist community by a notch, and that opens up the scope for so much creativity that would not have such a limitless medium of expression otherwise. The article seems a little old, and newer technologies have entered the space since its time of writing, including as Google’s Teachable machine. It is fascinating how I can now train a ML model and make something like *Cheese* by Christian Möller (2003) in a few hours using Teachable, whereas Möller’s piece was a product of the joint effort of the artist and a whole research laboratory.

Another aspect of computer vision that made me think was the hand of humans, and all of our humane subjectivities, in the development of these algorithms. The author mentions that a computer processes a video stream differently than text, in that there are no principles for semiotic interpretation in place, and so computers need to be programmed to answer even the most rudimentary questions about the images it “sees”. Then, the algorithms are susceptible to absorbing the same implicit biases as their creators. For example, whether a computer thinks it’s looking at a “woman in traditional clothes” or “an exotic foreigner” will depend largely on how the programmers perceive the woman. Biases in AI and computer vision are now a popular topic in contemporary tech discourse, but I wonder how these concerns have evolved over the years, since the inception of computer vision in the 70s until now. Have programmers always been wary of negatively influencing their softwares, or are these 21st century fears? What can technologists do to ameliorate them?

Reading Reflection – Week 5

Computer Vision for Artists and Designers was a fascinating read about the topic of Computer Vision, a concept that is constantly gaining more traction in our world, but that is not understood as much as it should be. Personally, I was already aware of the concept, but not deeply enough as the reading presented, especially when it comes to its history and evolution throughout the years. The examples provided were also amusing, especially the ones that were more focused on people, such as the “Suicide Box” by the Bureau of Inverse Technology and “Cheese” from Christian Möller. What is interesting to me is that computer vision can be used both for purely artistic reasons and for social reasons. For instance, Suicide Box creates several discussions about the ethics of utilizing suicide as an experiment, such as the implications of recording people taking their own lives while doing nothing to prevent it. Or with “Cheese”, an installation that tracks people’s smiles, and plays an alarm when the display of happiness falls below a certain threshold. To some, this could be just a silly experiment, but when you think about it, corporations could absolutely enforce some sort of similar system to their employees, displaying the powers that such a technology can offer in our society.

Additionally, it was also interesting to read about the technological advancements of computer vision in physical optimizations and in multimedia authoring tools. With the examples provided, such as the technique of retroreflective marking materials used for safety uniforms and the “Limbotime” game, it made it much easier to comprehend the practical uses of these methods, which motivated me to know more about them.

Batool Al Tameemi- Midterm Proposal

Concept:

I really like Caramel, the cat who lives at NYUAD’s campus. I think that being an NYUAD student is more enjoyable because of the chance to spend time with the campus cats. I’m a graphic designer, and I wanted to draw a picture of Caramel because it’s a lot of fun for me. I’m also interested in coding, and I want to use my coding skills to make my projects better and learn more about coding.

I got inspired to make a game called “Catsaway,” where Caramel can fly around our campus without bumping into the pointy palm tree corners. In “Catsaway,” Caramel can smoothly float through the soft, green palm leaves. All you have to do is press the spacebar to help Caramel enjoy a fun journey through the skies above our campus.

Sketches:

Why I am excited for CatsAway:

Cats Away can be helpful for CAMPUS KIDS to play:

  • Enhanced Concentration and Focus: CatsAway demands that players maintain keen attention to the game’s rapid-paced dynamics. This can support children in refining their ability to concentrate and focus, which can prove advantageous in both academic pursuits and real-world scenarios.
  • Resilience and Tenacity: CatsAway’s demanding nature can instill in children the significance of perseverance. It motivates them to persist, learn from their errors, and cultivate resilience when confronted with challenges.
  • Hand-Eye Coordination: Engaging with CatsAway can refine a child’s hand-eye coordination, requiring precise timing of taps to keep the bird aloft.
  • Stress Alleviation: Despite the potential for frustration, the game can also serve as a method for stress relief for certain children. Immersing themselves in challenging gameplay can momentarily divert their attention from daily stressors.
  • Objective Setting and Attainment: Accomplishing higher scores or advancing further in the game can bestow upon children a feeling of achievement and inspire them to set and realize objectives, a valuable life aptitude.
  • Cognitive Abilities: The game’s demands on spatial awareness and timing can invigorate cognitive development, aiding children in honing their problem-solving proficiencies.

Week 5 – Reading Response

In the reading “Computer Vision for Artists and Designers,” Levin introduces the computer vision, algorithms for implementation, and its creative potential. I particularly liked the project examples he provided to illustrate how computer vision can be applied in real-world scenarios; they were all so interesting to read about. One project, “Suicide Box,” stood out to me because it aims to address a social issue and privide an evidence, not just for entertainment (which was a bit different from what I was expecting from interactive projects). This project inspired me to consider how technology can be a tool for raising awareness and gathering evidence on important social issues through creative projects. It expanded my thinking on the project ideas I could work on in future assignments, emphasizing that the purpose and meaning behind our work is essential consideration, and it can be one that delivers an important message of social impact.

I agree with Levin’s idea for the reliability of computer vision and its ongoing development. He mentions the challenge that computer vision is “opaque,” meaning it requires explicit programming to distinguish objects based on factors like contrast, color, motion, and brightness. This emphasizes the need for continued efforts to enhance accuracy in machine vision. The reading also made me reflect on the limitations of current AI-generated visuals, which often lack accuracy. For example, chatGPT is quite good at solving math problems and writing essays/texts. However, if we ask it to provide us with code for an aesthetic image, the result would be just a few lines of different colors on the canvas. Of course, it needs more details to design something like that, but my idea is that AI still lacks the ability to recognize images and generate various types of images accurately. Not only chatGPT, also other image generating AI often generate logically wrong images. It raised the question of how working on machine vision and using it to improve AI-generated visuals could be a promising avenue for advancing computer development.

Week 4 – Production

When I thought about text, I naturally pictured something with many writings. I felt like the continuous popping up of texts seem very similar to overthinking and graffiti. I decided to link these two concepts (overthinking and graffiti) and create a design that shows how continuous thinking of positives and negatives end up blurring what was originally there, just like a wall covered with graffitis.

Below is my work. The intention was to show how different thoughts, both negative and positive, fill up our mind so quickly. I wanted to deliver the message that at some point, we just have to stop thinking and turn off our minds. To show that, I make the screen black and show “stop overthinking” after a certain number of counts.

The code I want to highlight is where I use even and odd numbers to decide the colour of the text I’m displaying. Of course, it’s not something fancy, but it’s just a way I used to make deciding colours more simple. For this, I just had to make sure that positive and negative words are in order in my array.

while (i < 6) {
      if (i % 2 == 0)
         fill(0, 102, 153);
      else
        fill(205, 92, 92);
      text(messages[i], random(-10, 600), random(125, 600));
      i = i + 1;
}

 

Week 4 – Reading Reflection

The reading, from the very start, drew me in with the example of the door. C2 of our campus has 2 doors on the sides (not the automatic doors in the very center) and I remember a friend who always pushed the wrong side of the door and so “nothing happened.” As a side note, she never figured it out (and rather gave up on using the doors) until she graduated last term.

It was interesting that design can have effect on people’s daily lives because I actually always thought designs are affected by human thoughts and behaviours. Looking at art and design as a way of showcasing how people think, I considered them as a one way thing, where people give inspiration to designs. For me, it was a very new way think that design has impact on people, and people give (or should give) feedback- impacting the design- and the (new) design impacting people, and on and on.

It does throw a question, however, in terms of how the feedbacks would be collected. I think normal users of designs still mostly focus on the aesthetics of designs more than the easy utility of it. (For instance, if something’s beautiful, we tend to think that its job is done as it is, even when it can be easier to use, or more effective serving its purpose.) So, I think the first step to being able to effectively gather feedback and provide some sort of guideline to designers would be the recognition of necessary standards of designs.

Week 4: Data visualization

For this assignment, I drew inspiration from a previous project where text elements orbited around a central point. I aimed to create an illustration resembling a solar system, complete with data on the distance and mass of each planet. My goal was to have the planets rotate around the sun at controlled speeds. However, I encountered challenges that proved to be more complex than I initially anticipated.

I successfully implemented a data view in the console section, but I faced difficulty in displaying the data directly within the visual output. My primary areas for improvement include finding a solution to display data in the visual output and refining the motion of the objects to accurately simulate the planetary orbits. And the part of the code I am particularly proud of is given below. This is something I learned newly by doing this project.

console.log(`Name: ${name}, Mass: ${mass}`);