Tesseract class
This commit is contained in:
parent
7fa39e90d3
commit
15cd10b357
|
@ -0,0 +1,91 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace service;
|
||||||
|
|
||||||
|
class Tesseract{
|
||||||
|
|
||||||
|
/* [1] Attributes
|
||||||
|
=========================================================*/
|
||||||
|
private $filename = null;
|
||||||
|
private $content = null;
|
||||||
|
private $course = null;
|
||||||
|
private $teacher = null;
|
||||||
|
private $room = null;
|
||||||
|
|
||||||
|
|
||||||
|
/* (1) Constructs and initialise a readed file
|
||||||
|
*
|
||||||
|
* @return instance<Tesseract> New Tesseract
|
||||||
|
*
|
||||||
|
---------------------------------------------------------*/
|
||||||
|
public function __construct($filename){
|
||||||
|
$this->filename = $filename;
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* (2) Read the image file
|
||||||
|
*
|
||||||
|
* @return this
|
||||||
|
*
|
||||||
|
---------------------------------------------------------*/
|
||||||
|
public function read(){
|
||||||
|
|
||||||
|
/* [1] Record the text from the image
|
||||||
|
=========================================================*/
|
||||||
|
$filename = $this->filename;
|
||||||
|
$this->content = shell_exec("tesseract $filename stdout -l fra");
|
||||||
|
|
||||||
|
$lists = explode(chr(10), $this->content);
|
||||||
|
|
||||||
|
if (count($lists) < 3) {
|
||||||
|
throw new \Exception('Result not interpreted');
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->course = $lists[0];
|
||||||
|
$this->teacher = $lists[1];
|
||||||
|
$this->room = $lists[2];
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (3) Return the text readed by the Tesseract OCR
|
||||||
|
*
|
||||||
|
* @return $this->content
|
||||||
|
*
|
||||||
|
---------------------------------------------------------*/
|
||||||
|
public function getContent() {
|
||||||
|
return $this->content;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (4) Return the course readed by the Tesseract OCR
|
||||||
|
*
|
||||||
|
* @return $this->course
|
||||||
|
*
|
||||||
|
---------------------------------------------------------*/
|
||||||
|
public function getCourse() {
|
||||||
|
return $this->course;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (5) Return the teacher readed by the Tesseract OCR
|
||||||
|
*
|
||||||
|
* @return $this->teacher
|
||||||
|
*
|
||||||
|
---------------------------------------------------------*/
|
||||||
|
public function getTeacher() {
|
||||||
|
return $this->teacher;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (6) Return the room class readed by the Tesseract OCR
|
||||||
|
*
|
||||||
|
* @return $this->room
|
||||||
|
*
|
||||||
|
---------------------------------------------------------*/
|
||||||
|
public function getRoom() {
|
||||||
|
return $this->room;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue