Method for decoding optical information present in an acquired image, and comprising identifying a set of functional parameters that are settable for processing said image and a plurality of instances of said set of functional parameters, and in which each of said instances corresponds to a different processing mode for said image, selecting a processing mode for decoding said optical information from the processing modes of a working set of processing modes, and applying said selected processing mode, associating with each processing mode a respective probability of success, this respective probability of success indicating the probability of success of decoding if the respective processing mode is selected; and in which said selecting one of said modes of said working set comprises choosing the processing mode with the highest probability of success value; said method comprising updating after said applying said selected processing mode, both if said decoding was successful and if said decoding was not successful, the probability of success of each processing mode of said working set, wherein if said decoding said acquired image is not successful said method further comprises analysing a reason why said decoding attempt failed to identify a cause of failure of said decoding, such as to provide adaptive decoding of said optical information, wherein a library set of processing modes for decoding said code refers to all the possible processing modes of said plurality of instances, said library set being formed of a preset number of different processing modes, said preset number being greater than or the same as the number of processing modes of said working set, wherein said method further comprises creating said library set and/or said working set and associating with each processing mode of said working set a corresponding value of probability of success upon creation of the library set or of the working set, wherein said updating the probability of success of each processing mode comprises increasing the probability of success of said selected processing mode and decreasing the probability of success of each non-selected processing mode of said working set, if said decoding said acquired image was successful, wherein the method further comprises modifying said working set if a cause of failure of said decoding is identified; wherein said modifying said working set comprises choosing, in said library set, processing modes related with a solution of said cause of failure and updating said working set with said processing modes related with said cause, and wherein said method further comprises associating a corresponding probability of success value with each processing mode of said modified working set, wherein the method further comprises identifying a set of possible causes of failure of said decoding and associating with each of said causes of failure a respective specialised subset or a plurality of respective specialised subsets of said settable functional parameters, to define a respective specialised set or a plurality of respective specialised subsets of said processing modes of said library set, each of said specialised sets being related with a different cause of failure, and associating with each processing mode of said specialised subset or of said plurality of respective specialised subsets of processing modes, a corresponding value of probability of success, wherein said method comprises updating said working set with processing modes of said specialised set associated with the identified cause of failure. <EOS>