src/ImFilter.jl

changeset 30
0b25d9ef7af9
parent 29
05b11c96ef45
child 32
41d13bf7d637
equal deleted inserted replaced
29:05b11c96ef45 30:0b25d9ef7af9
37 @assert(isodd(k) && isodd(𝓁)) 37 @assert(isodd(k) && isodd(𝓁))
38 38
39 res = similar(b) 39 res = similar(b)
40 40
41 Threads.@threads for i=1:n 41 Threads.@threads for i=1:n
42 for j=1:m 42 @inbounds for j=1:m
43 tmp = 0.0 43 tmp = 0.0
44 it₁ = inside(i, a₁, b₁, 1, n) 44 it₁ = inside(i, a₁, b₁, 1, n)
45 it₂ = inside(j, a₂, b₂, 1, m) 45 it₂ = inside(j, a₂, b₂, 1, m)
46 @inbounds for p=it₁ 46 for p=it₁
47 @simd for q=it₂ 47 @simd for q=it₂
48 tmp += kp[p-o₁, q-o₂]*b[i+p,j+q] 48 tmp += kp[p-o₁, q-o₂]*b[i+p,j+q]
49 end 49 end
50 end 50 end
51 @inbounds res[i, j] = tmp 51 res[i, j] = tmp
52 end 52 end
53 end 53 end
54 54
55 return res 55 return res
56 end 56 end

mercurial