Open Cezeri Libray (OCL) or OpenCezLib (yet another matrix lab) was released
OCL or OpenCezLib stands for Open Cezeri Library (yet another matrix library). This library provides rapid coding as matlab ease of use. If you want to know how can use library please try to utilise test examples at OpenCezeriLibrary\test\test. It is originally developed at Siirt University El-Cezeri laboratory by Dr. Musa Ataş, in order to establish generic framework , reusable components and software tools for machine vision, machine learning, AI and robotic applications. Currently, it holds following main concepts.
1- Vision: It can access web cams, imaging source industrial cameras for manuel settings (i.e gain, exposure control) and advanced issues. Studies on accesing Leapmotion and Kinect is still under-development.
2- Machine learning: It uses Weka Software and some personel coded ML algorithms
3- CMatrix: Special matrix library called as CMatrix meaning Cezeri Matrix Class. Actually it is regarded as the core class of the OCL. CMatrix class is implemented as Factory Method design pattern so you just need to call getInstance methods to instantiate the matrix object. Another skill of CMatrix is about being Fluent Interface Pattern with method chaining capability. Almost all methods return CMatrix object which enables programmer to write a program in a single line by chaining the methods with dot. This type of coding make programming easy, simple and enjoyable. In the CMatrix class, there exists various well known matlab functions like plot, imshow, cat, rand, linspace and so on. CMatrix is located at the core/center of the OCL and somehow relates to other classes i.e. ImageProcess, FactoryUtils, Weka ML, etc. User or programmer needs to understand only CMatrix and from there they can reach any other functions of other classes. User needs to interact CMatrix for developing the application and from this point of view approach can be considered as Facade Design Pattern and hence it is a kind of broker class or main controller class.
Notification: If you think OCL is useful for your project please cite OCL in your studies and papers. Furthermore, do not hesitate contact to me by e-mail :firstname.lastname@example.org if you have any problem or development requests. We will provide some tutorials and best/good practices about coding/programming with OCL, in the future,.