Section Menu

Information Part 1 Question 1 Question 2 Question 3 Question 4 Question 5 Part 2 Question 1 Question 2 Part 3 Question 1 Question 2 Question 3

COMP501 | Computing Technology in Society

Assignment 1: ICT Fundamentals

Full name: Nathan Dsouza
ID: 20112895
Email: [email protected]


Part 1 (35 Marks):

Question 1: Converting Between Number Bases (6 marks)

A is the last 3 digits of your AUT ID number, so if your ID is 123456 then A = 456.
Please fill the below boxes with your own ID number. It’s NOT 123456

 2   0   1   1   2   8   9   5 

Perform the following conversions between different number based systems (3 marks for each):
A = 895
Assume the number A is a decimal number (base 10):

1. Convert A10 (from Decimal) to Binary



A2 = 1101111111

2. Convert A10 (from Decimal) to Hexadecimal



A16 = 37F

Question 2: Unsigned Arithmetic Operations (6 marks)

Carry out the operations, assume that the numbers are unsigned and unlimited bits to represent:


a) Base 2: 01101111 + 11001101



= 100111100

b) Base 16: DBEAF1CA + F1CAF1CA



= 1CDB5E394

Question 3: Bitwise Logical Operations (12 marks)

Assume that numbers are represented as signed, 8-bit 2’s complement representation.
Carry out the following operations (2 marks each):


a) 0011 1110 | 0111 0001 (note: OR operation)



= 01111111

b) 1010 1011 & 0100 1101 (note: AND operation)



= 00001001

c) 1010 1010 ^ 1101 1100 (note: Exclusive OR operation)



= 01110110

d) 0011 0101 << 4 (note: Shift left arithmetic operation)



= 01010000

Question 4: 2’s Complement Conversion (5 marks)

Assume that numbers are represented as signed, 8-bit 2’s complement representation.
If the last two digits of your AUT ID is B, if your ID is 123456 then B = 56.
Work out the following question (replace B with your last 2 digits of your ID):

B10 = 95


1. Convert –B10 to 8-bit 2’s complement Binary; give the answer in 8 bits binary number.



B2 = 01011111

–B2 = 10100001

Question 5: ASCII Characters (6 marks)

Find the hexadecimal and Binary values corresponding to your full name (note that there are spaces in the string); answer the following:

 ASCII   Hexadecimal   Binary 
 N   0x4E   01001110 
 a   0x61   01100001 
 t   0x74   01110100 
 h   0x68   01101000 
 a   0x61   01100001 
 n   0x6E   01101110 
     0x20   00100000 
 D   0x44   01000100 
 s   0x73   01110011 
 o   0x6F   01101111 
 u   0x75   01110101 
 z   0x7A   01111010 
 a   0x61   01100001 

a) Your full name in Hexadecimal (base 16)

4E 61 74 68 61 6E 20 44 73 6F 75 7A 61

b) How many bits are used (do not count the end of string byte)

13 x 8 = 104 bits


Part Two (30 marks):

To answer the assignment questions, you use CLI (command-line interface) and provide:

a. The text or screen-shots of command(s) that you type to perform a task.

b. The text or screen-shots of any console output from those commands (the output from a directory listing, for example).

c. Make sure that you include ALL commands you used to do a task. This includes any commands you have to type to move to a specific directory.
Make sure your pasted texts or screen-shots are clear enough to show where you are or have moved to.

Question 1: Setting up three different Linux operating system (6 marks)

    VM Creation   Disk Selection   Final Installation 
 Kali
Linux 
 Manjaro
Linux 
 Hannah
Montana
Linux 

Question 2: Manipulate directory structures in Unix/Linux (24 marks – 2 marks each)

Use the OS that you set up from Question 1. Assume you are started at your home directory. Let your first name be XXX, so XXX = “Mark”, if your name is Mark. XXX from now on refers to your first name (e.g. Mark).

 Instruction   Command   Terminal 
Perform a command that displays the absolute path of your home directory (your current location).
pwd
Create a new directory inside your home directory and name it "XXX"
mkdir Nathan
Now navigate to the XXX directory and create directory XXX-HOMEWORK and change your current working directory to XXX-HOMEWORK.
cd Nathan
mkdir Nathan-HOMEWORK
cd Nathan-HOMEWORK
"Create three new subdirectories called Part1, Part2, and Part3 in XXX-HOMEWORK directory."
mkdir Part1
mkdir Part2
mkdir Part3
Create a new file called "MyFave.txt" using the touch command and insert three lines into the file (you may use echo command and >> command).
touch MyFave.txt
The first line should contain your name and ID number.
"echo "Nathan Dsouza 20112895" >> MyFave.txt"
The second line should be the first sentence of your favourite song.
echo "Vai minha tristeza e diz a ela que sem ela nao pode ser." >> MyFave.txt"
The third line should be the name of your favourite movie.
echo "Cars 2" >> MyFave.txt
And display the contents of the file "MyFave.txt" to the standard output screen (you may use cat command).
cat MyFave.txt
Display the number of words in the file "MyFave.txt" (you may use wc command).
wc -w MyFave.txt
Copy the file "MyFave.txt" to directory "Part1" and rename it to "MyFaveCopy.txt".
cp MyFave.txt Part1/MyFaveCopy.txt
Make another copy of "MyFaveCopy.txt" just made in directory "Part1" and name it "MyFaveCopyCopy.txt" (also store in the same directory "Part1").
cp Part1/MyFaveCopy.txt Part1/MyFaveCopyCopy.txt
"Then, display the contents of the directory "Part1" using the long format."
ls -l Part1/
Copy all the contents of directory "Part1" to directory "Part2".
cp Part1/* Part2/
Display the contents of the directory "Part2".
ls Part2/
"Assume that you are now at the current working directory XXX-HOMEWORK
create 15 new files (in directory XXX-HOMEWORK) named as follows: FICT.bak, unix.txt, thistest.bak, wumbo.file, wumbology.txt, moreThings.woot, FundaIT.txt, doodad.text, coursetxt, Test-1-2.xtxt, Test-2-2.xtxt, Test-1-1.bak, Test-1.txt, File-1.bat, Assignment1.file"
touch FICT.bak unix.txt thistest.bak wumbo.file wumbology.txt moreThings.woot FundaIT.txt doodad.text coursetxt Test-1-2.xtxt Test-2-2.xtxt Test-1-1.bak Test-1.txt File-1.bat Assignment1.file
And display a listing of all the files and directories in long format in the current working directory XXX-HOMEWORK.
ls -l
"Display a listing of all the files in the current working directory ending with letter "t" using one command, e.g. unix.txt or doodad.text. "
ls -d t*
"Display a listing of all the files in the current working directory starting with "T" and ending with "t" using one command, e.g. Test-1.txt."
ls -d T*t
Move everything (files/directories) containing letter "t" to the directory Part3 using one command.
mv *t* Part3/
Display a listing of the contents of the current directory XXX-HOMEWORK. All files that contain letter "t" should now be gone.
ls


Part 3 (25 marks)

 Model   Accuracy   Frames Per Second 
 yolov3_416   57.52   35 
 yolov3_tiny   55.69   220 

Question 1: Collect dataset / photos (5 marks)

This part of the assignment will help you to understand the basic idea of Machine Learning and Deep Learning using PyTorch (https://www.pytorch.org/) and Google Colab (https://colab.research.google.com/).

Assume that you are employed by New Zealand Autodriving Vehicle research group, they are creating an automatic detection system that allows the car to recognize a few common New Zealand road signs. Your job in the team is to qualify how well the system performs under different environments. The full list of most 50 common New Zealand road signs is presented in the Appendix of this assignment.

To do this, you will need to explore if there is an available Artificial Intelligence tool capable to quickly and accurately detect these road sign types on a public road. Thus, you try to test a fast version of an available object detection system - YOLO (https://pjreddie.com/darknet/yolo/). The detection accuracies of these objects will be evaluated on photos and a single video taken by yourself, and you will analyze the results to conclude if that tool is sufficient enough for your task.

The research team has provided you 2 different Yolo pre-trained weights that you can use to predict the signs in photos or videos. The model weight details are presented in the below table.

- Take at least 10 photos that include any items in the list of classes which is shown at the Appendix part of this document. Pictures can be taken by yourself via cell phone or found on the Internet.
- Resize the images so that each is less than 500 KB in size. Save all the pictures to folder Images, and all are stored as jpg type.
- List your collected images in the table below (0.5 marks for one image).

    Raw Images    

Question 2: Test the prediction performance of YOLO object detection system using images as the inputs (10 marks)

- Run the last two cells to do the prediction on a particular image or video
- Record your finding on the below table (Remember to replace by yours). Repeat the same process with two different pre-trained weights (yolov3_416 and yolov3_tiny). At the end, you should have two different tables, one for each pre-trained weight.

 416   416-Accuracy   Tiny   Tiny-Accuracy 
100% 0%
100% 100%
100% 0%
0% 0%
100% 0%
66.67% 100%
100% 100%
0% 0%
0% 0%
100% 0%
416-Average: 60.1% Tiny-Average 30%

Question 3: Test the prediction performance of YOLO object detection system using video as the input (10 marks)

- Record a short video* of different New Zealand road signs with .mp4 format (minimum 10s and 30s as maximum). This video could be taken by using your phone device or professional camera devices. The recommended resolutions are 720p or 1080p. You could use 2k or 4k video as well, but it would take a bit longer time to process. (5 marks)
- Run the video through the prediction process. The final video should be able to show at least one corrected class name for a minimum of 2s. (5 mark)