':' means 'All'.
For example in your code you have created a mask of size 4*20 and initialized it with zeros. i.e.
mask = zeros(mask_h,mask_w);
In the next line you are assigning some perticular values to your mask. i.e.
Here, 1: mask_h/2 = 1:2, because mask_h has value 4
and then ':' means 'All'. First index represents rows and second one column. So this line of code will assign value -1 to rows from 1 to 2 and in all columns. You can verify it by printing the mask value.
Same is for next line, where value of 1 is assigned for rest of the rows (3 to 4) in all columns.
If you don't want to assign values in all columns, then you will write something like:
mask(1:2, 1:10) = -1. Here value -1 will be assigned for rows 1 to 2 and columns 1 to 10 only.