I have an input signal array

I have a kernel array of size 10 filled with ones

1) I need to store the input signal array in a block of memory

2) I need to find the intersection between the input array and the kernel

3) I need to output the resulting array

ex. input signal array is [1, 2, 3, 4, 5, 6, 7]

kernel array is [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]

the kernel size is 10 so half the 10 would be 5 --> index 4 in the kernel

1-In order to find the 1st element in the output array I find the intersection between the input and the kernel

[1,2,3,4,5,6,7]

[1,1,1,1,1,1,1,1,1,1]

(put the 5th 1 uner the 1 to find the intersection)

the intersection with the kernel is from 1 to 6 for the first element

the first element in the output would be (1+2+3+4+5+6)/6*1 = 3.5
2-to find the 2nd element of the output array
[1,2,3,4,5,6,7]
[1,1,1,1,1,1,1,1,1,1]
(put the 5th one under the 2 to find the intersection)
2nd element = (1+2+3+4+5+6+7)/(7*1) = 4

3-to find the 3rd element of the output array

[1,2,3,4,5,6,7]

[1,1,1,1,1,1,1,1,1,1]

(put the 5th one under the 3 to find the intersection)

3rd element = (1+2+3+4+5+6+7)/(7*1) = 4

.

.

.

The output array should be [3.5, 4, 4, 4, 4, 4.5, 5]