100 lines
4.4 KiB
JSON
100 lines
4.4 KiB
JSON
|
{
|
||
|
// Define parameters
|
||
|
// ========================================================
|
||
|
// Unit abbreviations:
|
||
|
// dva: degrees of visual angle
|
||
|
// pix: pixels
|
||
|
"verbose": true,
|
||
|
|
||
|
// display: Defines geometry of target display
|
||
|
// ========================================================
|
||
|
// The encoded image will be scaled such that it optimally uses
|
||
|
// the max space available. If the orignal image has a different aspect
|
||
|
// ratio than the display region, it will only use one spatial
|
||
|
// dimension (horizontal or vertical) to its full extent
|
||
|
//
|
||
|
// If one dva corresponds to different pix_per_dva on the display,
|
||
|
// (i.e. varying distance observers from screen), it should be set
|
||
|
// larger than the largest pix_per_dva required, for avoiding
|
||
|
// extrapolation artefacts or blur.
|
||
|
//
|
||
|
"display": {
|
||
|
"size_max_x_dva": 10.0, // maximum x size of encoded image
|
||
|
"size_max_y_dva": 10.0, // minimum y size of encoded image
|
||
|
"pix_per_dva": 40.0, // scaling factor pixels to dva
|
||
|
"scale": "same_range" // "same_luminance" or "same_range"
|
||
|
},
|
||
|
|
||
|
// gabor: Defines paras of Gabor filters for contour extraction
|
||
|
// ==============================================================
|
||
|
"gabor": {
|
||
|
"sigma_kernel_dva": 0.06,
|
||
|
"lambda_kernel_dva": 0.12,
|
||
|
"n_orientations": 8
|
||
|
},
|
||
|
|
||
|
// encoding: Defines parameters of sparse encoding process
|
||
|
// ========================================================
|
||
|
// Roughly speaking, after contour extraction dictionary elements
|
||
|
// will be placed starting from the position with the highest
|
||
|
// overlap with the contour. Elements placed can be surrounded
|
||
|
// by a dead or inhibitory zone to prevent placing further elements
|
||
|
// too closely. The procedure will map 'n_patches_compute' elements
|
||
|
// and then stop. For each element one obtains an overlap with the
|
||
|
// contour image.
|
||
|
//
|
||
|
// After placement, the overlaps found are normalized to the max
|
||
|
// overlap found, and then all elements with a larger normalized overlap
|
||
|
// than 'overlap_threshold' will be selected. These remaining
|
||
|
// elements will comprise a 'full' encoding of the contour.
|
||
|
//
|
||
|
// To generate even sparser representations, the full encoding can
|
||
|
// be reduced to a certain percentage of elements in the full encoding
|
||
|
// by setting the variable 'percentages'
|
||
|
//
|
||
|
// Example: n_patches_compute: 100 reduced by overlap_threshold: 0.1
|
||
|
// to 80 elements. Requesting a percentage of 30% yields representation
|
||
|
// with 24 elements.
|
||
|
//
|
||
|
"encoding": {
|
||
|
"n_patches_compute": 100, // this amount of patches will be placed
|
||
|
"use_exp_deadzone": true, // parameters of Gaussian deadzone
|
||
|
"size_exp_deadzone_dva": 1.20, // PREVIOUSLY 1.4283
|
||
|
"use_cutout_deadzone": true, // parameters of cutout deadzone
|
||
|
"size_cutout_deadzone_dva": 0.65, // PREVIOUSLY 0.7575
|
||
|
"overlap_threshold": 0.1, // relative overlap threshold
|
||
|
"percentages": 100
|
||
|
},
|
||
|
|
||
|
"number_of_patches": 100, // TODO: Repeated from encoding
|
||
|
|
||
|
// dictionary: Defines parameters of dictionary
|
||
|
// ========================================================
|
||
|
"dictionary": {
|
||
|
"size_dva": 1.0, // PREVIOUSLY 1.25,
|
||
|
"clocks": {
|
||
|
"n_dir": 8, // number of directions for clock pointer segments
|
||
|
"n_open": 4, // number of opening angles between two clock pointer segments
|
||
|
"pointer_width": 0.07, // PREVIOUSLY 0.05, // relative width and size of tip extension of clock pointer
|
||
|
"pointer_length": 0.18 // PREVIOUSLY 0.15, // relative length of clock pointer
|
||
|
},
|
||
|
"phosphene": {
|
||
|
"sigma_width": 0.18 // DEFAULT 0.15, // half-width of Gaussian
|
||
|
}
|
||
|
},
|
||
|
|
||
|
|
||
|
// control: For controlling plotting options and flow of script
|
||
|
// ========================================================
|
||
|
"control": {
|
||
|
"force_torch_use_cpu": false, // force using CPU even if GPU available
|
||
|
// "show_capture": true, // shows captured image
|
||
|
// "show_object": true, // shows detected object
|
||
|
"show_mode": "cv2", // "pyplot" or "cv2"
|
||
|
"show_image": true, // shows input image
|
||
|
"show_contours": true, // shows extracted contours
|
||
|
"show_percept": true // shows percept
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|