ISET / isetL3

Linear, Local, Learned
3 stars 6 forks source link

Refactoring plan for GPU #3

Closed wandell closed 8 years ago

wandell commented 9 years ago

Qiyuan says --

Following our meeting, here are some ideas I have for the L3 structure. Basically there are only two main function: L3Train and L3Render.

function [L3_filters, idxFromClass2Filters] = L3Train(raw_patches, target_values, classDefinitionStruct) for each raw_patch, do: (1) compute class index (current method, automatic classification, etc) for each class, do (1) get corresponding raw_patches and target_values (2) find L3_filter (Wiener, Ridge, etc) end

function rendered_image = L3Render(input_raw, L3_filters) in parallel for each raw pixel/patch, do:
(1) compute class index (2) retrieve and apply filter (weighted summation)
end

There are other functions that help.

L3Train does not care how the training raw patches and target values are generated.

They can be from physical images. They can be noise free ISET patch then scaled or anything. There should be other codes to do this. Anyway, L3 software only has L3Train and L3Render.

hjiang36 commented 8 years ago

This is more or less what we have in the new code now, but we do it with classes instead of functions. Closing this issue for now.