Changed class structure to OpenCV structure, using an 'abstract interface - hidden implementation concept'.