Topics

Online OCR addon #addonrequestreview

Larry Wang
 

Hi everyone!
 
This is an add on that add online ocr engines for users not using windows 10.
This addon also added "Auto OCR" feature to NVDA. Whenever navigator object changes, NVDA will automatically run OCR on current navigator object with Windows 10 OCR engine.
 
NVDA+Shift+R Recognize current navigator object  with online OCR engine and read results directly
NVDA+ALT+Shift+R Recognize current navigator object with online OCR engine and open a result viewer like Windows 10 OCR
NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR engine and read results directly
NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR engine.Then open a result viewer like Windows 10 OCR
The addon can be downloaded at
 

zvonimir stanečić, 9a5dsz
 

Hi Larry,

Can you provide more details about the addon?

Which languages are supported by the online ocr engine?

 

 

From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Larry Wang
Sent: Wednesday, March 13, 2019 9:46 AM
To: nvda-addons@nvda-addons.groups.io
Subject: [nvda-addons] Online OCR addon #addonrequestreview

 

Hi everyone!

 

This is an add on that add online ocr engines for users not using windows 10.

This addon also added "Auto OCR" feature to NVDA. Whenever navigator object changes, NVDA will automatically run OCR on current navigator object with Windows 10 OCR engine.

 

NVDA+Shift+R Recognize current navigator object  with online OCR engine and read results directly

NVDA+ALT+Shift+R Recognize current navigator object with online OCR engine and open a result viewer like Windows 10 OCR

NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR engine and read results directly

NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR engine.Then open a result viewer like Windows 10 OCR

The addon can be downloaded at

 

Larry Wang
 

Sorry, I forgot to point out that details are in addon document.
I paste it here for your convience.
# Online OCR addon #

This addon aims at enhancing the experience of OCR when using NVDA.

Add more accurate online engines to NVDA.
Add "Auto OCR" feature. Whenever navigator object changes, NVDA will automatically run OCR on current navigator object with Windows 10 OCR engine.

The author of addon have registered account with free API quota and put them on www.nvdacn.com  to make this addon easier to use.Registering your own key is highly recommended.

Online engines relies on the use and presence of the following services.






## Hotkeys

NVDA+Shift+R Recognize current navigator object  with online OCR engine and read results directly
NVDA+ALT+Shift+R Recognize current navigator object with online OCR engine and open a result viewer like Windows 10 OCR
NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR engine and read results directly
NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR engine.Then open a result viewer like Windows 10 OCR

Ctrl+semicolon Enable or disable "Auto OCR".

## Configuration

You can choose recognition engines and configure them in detail in *Online OCR* categroy in NVDA settings dialog.

The following two settings are applicable to all engines.

API Access Type: How you get access to the corresponding API endpoints.
If you choose Use public quota, you are using free quota in an account registered by addon author.
If you choose Use your own api key,this addon will use your own api access tokens.
There are four engines avaliable.

API key or API Secret Key:
These are only valid if you choose "use your own api key" in API Access type.

### OCR space
This one is a paid API with free quota provided by ocr.space
Support 24 languages including
Arabic 
Bulgarian 
Chinese(Simplified) 
Chinese(Traditional) 
Croatian 
Czech 
Danish 
Dutch 
English 
Finnish 
French 
German 
Greek 
Hungarian 
Korean 
Italian 
Japanese 
Polish 
Portuguese 
Russian 
Slovenian 
Spanish  
Swedish  
Turkish  

Here are settings for this engine:
Detect image orientation
If set to true, the api autorotates the image correctly.
Scale image for better quality
If set to true, the api does some internal upscaling. This can improve the OCR result significantly, especially for low-resolution PDF scans.
Optimize for table recognition 
If set to true, the OCR logic makes sure that the parsed text result is always returned line by line. This switch is recommended for table OCR, receipt OCR, invoice processing and all other type of input documents that have a table like structure.

You can get your own free api key by registering on
Find the link "Register for free API key"
Click on it and you will find a form to fill in.
The form asks you to enter the following data
Email Address 
First Name
Last Name
How do you plan to use the OCR API?
After filling it and submit. You may also need to pass reCAPTCHA
Then you will receive a confirmation e-mail
Click the button "Yes, subscribe me to this list." and you will receive API key by e-mail.

### Baidu OCR
This one is also a paid API with free quota provided by Baidu.
Baidu OCR supports 10 languages including
Chinese and English mixture
English
Portuguese
French
German
Italian
Spanish
Russian
Japanese
Korean
This engine can also get position of every character

Here are its settings:

Detect image direction is suitable for scanned pages.
Get position of every character allows you to do more precise operation on some inaccessible application. Enabling this will make recognition slightly slower.

Use Accurate API takes longer time but has higher quality and also higher price.

It has four endpoints with seperate quota limit.

Basic OCR without any information about text location.
Currently 50000 times a day.
Basic OCR with information about text location.
Currently 500 times a day.
Accurate OCR without any information about text location.
Currently 500 times a day.
Accurate with information about text location.
Currently 50 times a day.

If you checked the high accurate api checkbox you are using accurate API.
If you presses NVDA+Shift+R or NVDA+Windows+R, you are using endpoints without any information about text location. 

Though it provides a quite gengerous free quota, its website is Chinese only and not quite accessible.

### Sougou OCR and Tencent AI OCR
These two API are free to use with frequency limit.
If you want to by pass the limit you can register your own api key.The website  of these two APIs are also Chinese only and not quite accessible.
There is no information about language support in these api document
According to my test Chinese and English and their mixture is surpported.
There are no additional configuration for these API.


On Wed, Mar 13, 2019 at 4:52 PM zvonimir stanečić, 9a5dsz <zvonimirek222@...> wrote:

Hi Larry,

Can you provide more details about the addon?

Which languages are supported by the online ocr engine?

 

 

From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Larry Wang
Sent: Wednesday, March 13, 2019 9:46 AM
To: nvda-addons@nvda-addons.groups.io
Subject: [nvda-addons] Online OCR addon #addonrequestreview

 

Hi everyone!

 

This is an add on that add online ocr engines for users not using windows 10.

This addon also added "Auto OCR" feature to NVDA. Whenever navigator object changes, NVDA will automatically run OCR on current navigator object with Windows 10 OCR engine.

 

NVDA+Shift+R Recognize current navigator object  with online OCR engine and read results directly

NVDA+ALT+Shift+R Recognize current navigator object with online OCR engine and open a result viewer like Windows 10 OCR

NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR engine and read results directly

NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR engine.Then open a result viewer like Windows 10 OCR

The addon can be downloaded at

 

Noelia Ruiz
 

Hi, I have cloned the add-on and perform a superfast review of
important pieces of code, like part of a file for OCR support, and the
__init__.py file of the plugin.
I don't have Win 10 here and I will test this later. I'm just writing
because, with this fast review (with some comments in case you want to
consider them), I'm very impressed, in general. I think you have
studied NVDA's code and this is clean and great with some comments.
Hope this can be poste on the website very soon.

Cheers.

2019-03-13 10:06 GMT+01:00, Larry Wang <larry.wang.801@...>:

Sorry, I forgot to point out that details are in addon document.
I paste it here for your convience.
# Online OCR addon #

This addon aims at enhancing the experience of OCR when using NVDA.

Add more accurate online engines to NVDA.
Add "Auto OCR" feature. Whenever navigator object changes, NVDA will
automatically run OCR on current navigator object with Windows 10 OCR
engine.

The author of addon have registered account with free API quota and put
them on www.nvdacn.com to make this addon easier to use.Registering your
own key is highly recommended.

Online engines relies on the use and presence of the following services.

https://www.nvdacn.com

https://ocr.space/ocrapi

http://ai.qq.com

http://ai.baidu.com

http://ai.sogou.com/

## Hotkeys

NVDA+Shift+R Recognize current navigator object with online OCR engine and
read results directly
NVDA+ALT+Shift+R Recognize current navigator object with online OCR engine
and open a result viewer like Windows 10 OCR
NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
engine and read results directly
NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
engine.Then open a result viewer like Windows 10 OCR

Ctrl+semicolon Enable or disable "Auto OCR".

## Configuration

You can choose recognition engines and configure them in detail in *Online
OCR* categroy in NVDA settings dialog.

The following two settings are applicable to all engines.

API Access Type: How you get access to the corresponding API endpoints.
If you choose Use public quota, you are using free quota in an account
registered by addon author.
If you choose Use your own api key,this addon will use your own api access
tokens.
There are four engines avaliable.

API key or API Secret Key:
These are only valid if you choose "use your own api key" in API Access
type.

### OCR space
This one is a paid API with free quota provided by ocr.space
Support 24 languages including
Arabic
Bulgarian
Chinese(Simplified)
Chinese(Traditional)
Croatian
Czech
Danish
Dutch
English
Finnish
French
German
Greek
Hungarian
Korean
Italian
Japanese
Polish
Portuguese
Russian
Slovenian
Spanish
Swedish
Turkish

Here are settings for this engine:
Detect image orientation
If set to true, the api autorotates the image correctly.
Scale image for better quality
If set to true, the api does some internal upscaling. This can improve the
OCR result significantly, especially for low-resolution PDF scans.
Optimize for table recognition
If set to true, the OCR logic makes sure that the parsed text result is
always returned line by line. This switch is recommended for table OCR,
receipt OCR, invoice processing and all other type of input documents that
have a table like structure.

You can get your own free api key by registering on
https://ocr.space/ocrapi
Find the link "Register for free API key"
Click on it and you will find a form to fill in.
The form asks you to enter the following data
Email Address
First Name
Last Name
How do you plan to use the OCR API?
After filling it and submit. You may also need to pass reCAPTCHA
Then you will receive a confirmation e-mail
Click the button "Yes, subscribe me to this list." and you will receive API
key by e-mail.

### Baidu OCR
This one is also a paid API with free quota provided by Baidu.
Baidu OCR supports 10 languages including
Chinese and English mixture
English
Portuguese
French
German
Italian
Spanish
Russian
Japanese
Korean
This engine can also get position of every character

Here are its settings:

Detect image direction is suitable for scanned pages.
Get position of every character allows you to do more precise operation on
some inaccessible application. Enabling this will make recognition slightly
slower.

Use Accurate API takes longer time but has higher quality and also higher
price.

It has four endpoints with seperate quota limit.

Basic OCR without any information about text location.
Currently 50000 times a day.
Basic OCR with information about text location.
Currently 500 times a day.
Accurate OCR without any information about text location.
Currently 500 times a day.
Accurate with information about text location.
Currently 50 times a day.

If you checked the high accurate api checkbox you are using accurate API.
If you presses NVDA+Shift+R or NVDA+Windows+R, you are using endpoints
without any information about text location.

Though it provides a quite gengerous free quota, its website is Chinese
only and not quite accessible.

### Sougou OCR and Tencent AI OCR
These two API are free to use with frequency limit.
If you want to by pass the limit you can register your own api key.The
website of these two APIs are also Chinese only and not quite accessible.
There is no information about language support in these api document
According to my test Chinese and English and their mixture is surpported.
There are no additional configuration for these API.


On Wed, Mar 13, 2019 at 4:52 PM zvonimir stanečić, 9a5dsz <
zvonimirek222@...> wrote:

Hi Larry,

Can you provide more details about the addon?

Which languages are supported by the online ocr engine?





*From:* nvda-addons@nvda-addons.groups.io <
nvda-addons@nvda-addons.groups.io> *On Behalf Of *Larry Wang
*Sent:* Wednesday, March 13, 2019 9:46 AM
*To:* nvda-addons@nvda-addons.groups.io
*Subject:* [nvda-addons] Online OCR addon #addonrequestreview



Hi everyone!



This is an add on that add online ocr engines for users not using windows
10.

This addon also added "Auto OCR" feature to NVDA. Whenever navigator
object changes, NVDA will automatically run OCR on current navigator
object
with Windows 10 OCR engine.



NVDA+Shift+R Recognize current navigator object with online OCR engine
and read results directly

NVDA+ALT+Shift+R Recognize current navigator object with online OCR
engine
and open a result viewer like Windows 10 OCR

NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
engine and read results directly

NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
engine.Then open a result viewer like Windows 10 OCR

The addon can be downloaded at


https://github.com/larry801/online_ocr/releases/download/0.1/onlineOCR-0.1-dev.nvda-addon

Souce code:

https://github.com/larry801/online_ocr/tree/master/source







Noelia Ruiz
 

Hi, I think we should wait some days to request more feedback from
people before posting the add-on on the website.
Anyway, these are my preliminar results of review:

* License and copyright: Pass.
* Security: Pass.
* Documentation: Pass with comments. I have found spelling errors and
English speakers could suggest grammar improvements. Also, you may
want to put links to direct downloads (please see other examples if
you want).
* User experience: Fail. For me profiles are not working as expected,
and if the add-on don't support them it should be clarified, since
they are shown in settings dialog.

Comments: You may want to follow NVDA contributing and look at add-on
guidelines to improve readability. For instance, I see that some
comments for translators use sentences which belong to voices dialog,
and some messages have no comment. Also, you use u"" for some messages
and this may not be needed.
Hope we can post this add-on very soon on the website. I think it's
very useful and I see you have studied NVDA's code.

Thanks


2019-03-13 11:15 GMT+01:00, Noelia Ruiz via Groups.Io
<nrm1977=gmail.com@groups.io>:

Hi, I have cloned the add-on and perform a superfast review of
important pieces of code, like part of a file for OCR support, and the
__init__.py file of the plugin.
I don't have Win 10 here and I will test this later. I'm just writing
because, with this fast review (with some comments in case you want to
consider them), I'm very impressed, in general. I think you have
studied NVDA's code and this is clean and great with some comments.
Hope this can be poste on the website very soon.

Cheers.

2019-03-13 10:06 GMT+01:00, Larry Wang <larry.wang.801@...>:
Sorry, I forgot to point out that details are in addon document.
I paste it here for your convience.
# Online OCR addon #

This addon aims at enhancing the experience of OCR when using NVDA.

Add more accurate online engines to NVDA.
Add "Auto OCR" feature. Whenever navigator object changes, NVDA will
automatically run OCR on current navigator object with Windows 10 OCR
engine.

The author of addon have registered account with free API quota and put
them on www.nvdacn.com to make this addon easier to use.Registering your
own key is highly recommended.

Online engines relies on the use and presence of the following services.

https://www.nvdacn.com

https://ocr.space/ocrapi

http://ai.qq.com

http://ai.baidu.com

http://ai.sogou.com/

## Hotkeys

NVDA+Shift+R Recognize current navigator object with online OCR engine
and
read results directly
NVDA+ALT+Shift+R Recognize current navigator object with online OCR
engine
and open a result viewer like Windows 10 OCR
NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
engine and read results directly
NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
engine.Then open a result viewer like Windows 10 OCR

Ctrl+semicolon Enable or disable "Auto OCR".

## Configuration

You can choose recognition engines and configure them in detail in
*Online
OCR* categroy in NVDA settings dialog.

The following two settings are applicable to all engines.

API Access Type: How you get access to the corresponding API endpoints.
If you choose Use public quota, you are using free quota in an account
registered by addon author.
If you choose Use your own api key,this addon will use your own api
access
tokens.
There are four engines avaliable.

API key or API Secret Key:
These are only valid if you choose "use your own api key" in API Access
type.

### OCR space
This one is a paid API with free quota provided by ocr.space
Support 24 languages including
Arabic
Bulgarian
Chinese(Simplified)
Chinese(Traditional)
Croatian
Czech
Danish
Dutch
English
Finnish
French
German
Greek
Hungarian
Korean
Italian
Japanese
Polish
Portuguese
Russian
Slovenian
Spanish
Swedish
Turkish

Here are settings for this engine:
Detect image orientation
If set to true, the api autorotates the image correctly.
Scale image for better quality
If set to true, the api does some internal upscaling. This can improve
the
OCR result significantly, especially for low-resolution PDF scans.
Optimize for table recognition
If set to true, the OCR logic makes sure that the parsed text result is
always returned line by line. This switch is recommended for table OCR,
receipt OCR, invoice processing and all other type of input documents
that
have a table like structure.

You can get your own free api key by registering on
https://ocr.space/ocrapi
Find the link "Register for free API key"
Click on it and you will find a form to fill in.
The form asks you to enter the following data
Email Address
First Name
Last Name
How do you plan to use the OCR API?
After filling it and submit. You may also need to pass reCAPTCHA
Then you will receive a confirmation e-mail
Click the button "Yes, subscribe me to this list." and you will receive
API
key by e-mail.

### Baidu OCR
This one is also a paid API with free quota provided by Baidu.
Baidu OCR supports 10 languages including
Chinese and English mixture
English
Portuguese
French
German
Italian
Spanish
Russian
Japanese
Korean
This engine can also get position of every character

Here are its settings:

Detect image direction is suitable for scanned pages.
Get position of every character allows you to do more precise operation
on
some inaccessible application. Enabling this will make recognition
slightly
slower.

Use Accurate API takes longer time but has higher quality and also higher
price.

It has four endpoints with seperate quota limit.

Basic OCR without any information about text location.
Currently 50000 times a day.
Basic OCR with information about text location.
Currently 500 times a day.
Accurate OCR without any information about text location.
Currently 500 times a day.
Accurate with information about text location.
Currently 50 times a day.

If you checked the high accurate api checkbox you are using accurate API.
If you presses NVDA+Shift+R or NVDA+Windows+R, you are using endpoints
without any information about text location.

Though it provides a quite gengerous free quota, its website is Chinese
only and not quite accessible.

### Sougou OCR and Tencent AI OCR
These two API are free to use with frequency limit.
If you want to by pass the limit you can register your own api key.The
website of these two APIs are also Chinese only and not quite
accessible.
There is no information about language support in these api document
According to my test Chinese and English and their mixture is surpported.
There are no additional configuration for these API.


On Wed, Mar 13, 2019 at 4:52 PM zvonimir stanečić, 9a5dsz <
zvonimirek222@...> wrote:

Hi Larry,

Can you provide more details about the addon?

Which languages are supported by the online ocr engine?





*From:* nvda-addons@nvda-addons.groups.io <
nvda-addons@nvda-addons.groups.io> *On Behalf Of *Larry Wang
*Sent:* Wednesday, March 13, 2019 9:46 AM
*To:* nvda-addons@nvda-addons.groups.io
*Subject:* [nvda-addons] Online OCR addon #addonrequestreview



Hi everyone!



This is an add on that add online ocr engines for users not using
windows
10.

This addon also added "Auto OCR" feature to NVDA. Whenever navigator
object changes, NVDA will automatically run OCR on current navigator
object
with Windows 10 OCR engine.



NVDA+Shift+R Recognize current navigator object with online OCR engine
and read results directly

NVDA+ALT+Shift+R Recognize current navigator object with online OCR
engine
and open a result viewer like Windows 10 OCR

NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
engine and read results directly

NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
engine.Then open a result viewer like Windows 10 OCR

The addon can be downloaded at


https://github.com/larry801/online_ocr/releases/download/0.1/onlineOCR-0.1-dev.nvda-addon

Souce code:

https://github.com/larry801/online_ocr/tree/master/source









Tyler Wood
 

Hi,

Can you please explain this in more detail?

This addon also added "Auto OCR" feature to NVDA. Whenever navigator object changes, NVDA will automatically run OCR on current navigator object with Windows 10 OCR engine.


Does this mean that if I run OCR with NVDA plus r, this addon will continuously refresh that particular screen with new information if, for example, I was playing xbox?


thank you.

On 2019-03-13 3:45 a.m., Larry Wang wrote:
Hi everyone!
 
This is an add on that add online ocr engines for users not using windows 10.
This addon also added "Auto OCR" feature to NVDA. Whenever navigator object changes, NVDA will automatically run OCR on current navigator object with Windows 10 OCR engine.
 
NVDA+Shift+R Recognize current navigator object  with online OCR engine and read results directly
NVDA+ALT+Shift+R Recognize current navigator object with online OCR engine and open a result viewer like Windows 10 OCR
NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR engine and read results directly
NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR engine.Then open a result viewer like Windows 10 OCR
The addon can be downloaded at
 

Brian's Mail list account
 

Oh and that would soon run you up against the number of times limit, as well as give you a headache!
Sounds interesting but since I'm not up in these online ocr solutions I think somebody needs to explain it all a bit clearer.
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.

----- Original Message -----
From: "Tyler Wood" <tcwood12@...>
To: <nvda-addons@nvda-addons.groups.io>
Sent: Wednesday, March 13, 2019 6:07 PM
Subject: Re: [nvda-addons] Online OCR addon #addonrequestreview


Hi,

Can you please explain this in more detail?

This addon also added "Auto OCR" feature to NVDA. Whenever navigator
object changes, NVDA will automatically run OCR on current navigator
object with Windows 10 OCR engine.


Does this mean that if I run OCR with NVDA plus r, this addon will
continuously refresh that particular screen with new information if, for
example, I was playing xbox?


thank you.

On 2019-03-13 3:45 a.m., Larry Wang wrote:
Hi everyone!
This is an add on that add online ocr engines for users not using
windows 10.
This addon also added "Auto OCR" feature to NVDA. Whenever navigator
object changes, NVDA will automatically run OCR on current navigator
object with Windows 10 OCR engine.
NVDA+Shift+R Recognize current navigator object with online OCR
engine and read results directly
NVDA+ALT+Shift+R Recognize current navigator object with online OCR
engine and open a result viewer like Windows 10 OCR
NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
engine and read results directly
NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
engine.Then open a result viewer like Windows 10 OCR
The addon can be downloaded at
https://github.com/larry801/online_ocr/releases/download/0.1/onlineOCR-0.1-dev.nvda-addon
Souce code:
https://github.com/larry801/online_ocr/tree/master/source


Timothy
 

It would not run you against any limit, as if it uses the Windows 10 OCR engine, it'd be offline and completely local. As a note, the documentation doesn't even mention Microsoft's OCR as an online service, so the point is moot anyway.

If this add-on really does use the Windows 10 OCR engine for the auto OCR feature, then I may download the add-on for that alone, as I'm not interested in using OCR through any online service -- both for speed and privacy reasons.

Timothy

----- Original Message -----
From: "Brian's Mail list account via Groups.Io" <bglists=blueyonder.co.uk@groups.io>
To: <nvda-addons@nvda-addons.groups.io>
Sent: Wednesday, March 13, 2019 3:58 PM
Subject: Re: [nvda-addons] Online OCR addon #addonrequestreview


Oh and that would soon run you up against the number of times limit, as well
as give you a headache!
Sounds interesting but since I'm not up in these online ocr solutions I
think somebody needs to explain it all a bit clearer.
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
----- Original Message -----
From: "Tyler Wood" <tcwood12@...>
To: <nvda-addons@nvda-addons.groups.io>
Sent: Wednesday, March 13, 2019 6:07 PM
Subject: Re: [nvda-addons] Online OCR addon #addonrequestreview


Hi,

Can you please explain this in more detail?

This addon also added "Auto OCR" feature to NVDA. Whenever navigator
object changes, NVDA will automatically run OCR on current navigator
object with Windows 10 OCR engine.


Does this mean that if I run OCR with NVDA plus r, this addon will
continuously refresh that particular screen with new information if, for
example, I was playing xbox?


thank you.

On 2019-03-13 3:45 a.m., Larry Wang wrote:
Hi everyone!
This is an add on that add online ocr engines for users not using
windows 10.
This addon also added "Auto OCR" feature to NVDA. Whenever navigator
object changes, NVDA will automatically run OCR on current navigator
object with Windows 10 OCR engine.
NVDA+Shift+R Recognize current navigator object with online OCR
engine and read results directly
NVDA+ALT+Shift+R Recognize current navigator object with online OCR
engine and open a result viewer like Windows 10 OCR
NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
engine and read results directly
NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
engine.Then open a result viewer like Windows 10 OCR
The addon can be downloaded at
https://github.com/larry801/online_ocr/releases/download/0.1/onlineOCR-0.1-dev.nvda-addon
Souce code:
https://github.com/larry801/online_ocr/tree/master/source






Larry Wang
 

Hi Noelia,

Thanks for your review
Configuration part of this addon mainly comes from NVDA voice panel.I will try to look into why profile switching  fail.Could you describle it precisely?
u"" is used to avoid encoding problem like advanced dialog.Why is it unnecessary?
I will try to imporve comments and documents in 0.2
Cheers,
Larry


On Thu, Mar 14, 2019 at 2:01 AM Noelia Ruiz <nrm1977@...> wrote:
Hi, I think we should wait some days to request more feedback from
people before posting the add-on on the website.
Anyway, these are my preliminar results of review:

* License and copyright: Pass.
* Security: Pass.
* Documentation: Pass with comments. I have found spelling errors and
English speakers could suggest grammar improvements. Also, you may
want to put links to direct downloads (please see other examples if
you want).
* User experience: Fail. For me profiles are not working as expected,
and if the add-on don't support them it should be clarified, since
they are shown in settings dialog.

Comments: You may want to follow NVDA contributing and look at add-on
guidelines to improve readability. For instance, I see that some
comments for translators use sentences which belong to voices dialog,
and some messages have no comment. Also, you use u"" for some messages
and this may not be needed.
Hope we can post this add-on very soon on the website. I think it's
very useful and I see you have studied NVDA's code.

Thanks


2019-03-13 11:15 GMT+01:00, Noelia Ruiz via Groups.Io
<nrm1977=gmail.com@groups.io>:
> Hi, I have cloned the add-on and perform a superfast review of
> important pieces of code, like part of a file for OCR support, and the
> __init__.py file of the plugin.
> I don't have Win 10 here and I will test this later. I'm just writing
> because, with this fast review (with some comments in case you want to
> consider them), I'm very impressed, in general. I think you have
> studied NVDA's code and this is clean and great with some comments.
> Hope this can be poste on the website very soon.
>
> Cheers.
>
> 2019-03-13 10:06 GMT+01:00, Larry Wang <larry.wang.801@...>:
>> Sorry, I forgot to point out that details are in addon document.
>> I paste it here for your convience.
>> # Online OCR addon #
>>
>> This addon aims at enhancing the experience of OCR when using NVDA.
>>
>> Add more accurate online engines to NVDA.
>> Add "Auto OCR" feature. Whenever navigator object changes, NVDA will
>> automatically run OCR on current navigator object with Windows 10 OCR
>> engine.
>>
>> The author of addon have registered account with free API quota and put
>> them on www.nvdacn.com  to make this addon easier to use.Registering your
>> own key is highly recommended.
>>
>> Online engines relies on the use and presence of the following services.
>>
>> https://www.nvdacn.com
>>
>> https://ocr.space/ocrapi
>>
>> http://ai.qq.com
>>
>> http://ai.baidu.com
>>
>> http://ai.sogou.com/
>>
>> ## Hotkeys
>>
>> NVDA+Shift+R Recognize current navigator object  with online OCR engine
>> and
>> read results directly
>> NVDA+ALT+Shift+R Recognize current navigator object with online OCR
>> engine
>> and open a result viewer like Windows 10 OCR
>> NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
>> engine and read results directly
>> NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
>> engine.Then open a result viewer like Windows 10 OCR
>>
>> Ctrl+semicolon Enable or disable "Auto OCR".
>>
>> ## Configuration
>>
>> You can choose recognition engines and configure them in detail in
>> *Online
>> OCR* categroy in NVDA settings dialog.
>>
>> The following two settings are applicable to all engines.
>>
>> API Access Type: How you get access to the corresponding API endpoints.
>> If you choose Use public quota, you are using free quota in an account
>> registered by addon author.
>> If you choose Use your own api key,this addon will use your own api
>> access
>> tokens.
>> There are four engines avaliable.
>>
>> API key or API Secret Key:
>> These are only valid if you choose "use your own api key" in API Access
>> type.
>>
>> ### OCR space
>> This one is a paid API with free quota provided by ocr.space
>> Support 24 languages including
>> Arabic
>> Bulgarian
>> Chinese(Simplified)
>> Chinese(Traditional)
>> Croatian
>> Czech
>> Danish
>> Dutch
>> English
>> Finnish
>> French
>> German
>> Greek
>> Hungarian
>> Korean
>> Italian
>> Japanese
>> Polish
>> Portuguese
>> Russian
>> Slovenian
>> Spanish
>> Swedish
>> Turkish
>>
>> Here are settings for this engine:
>> Detect image orientation
>> If set to true, the api autorotates the image correctly.
>> Scale image for better quality
>> If set to true, the api does some internal upscaling. This can improve
>> the
>> OCR result significantly, especially for low-resolution PDF scans.
>> Optimize for table recognition
>> If set to true, the OCR logic makes sure that the parsed text result is
>> always returned line by line. This switch is recommended for table OCR,
>> receipt OCR, invoice processing and all other type of input documents
>> that
>> have a table like structure.
>>
>> You can get your own free api key by registering on
>> https://ocr.space/ocrapi
>> Find the link "Register for free API key"
>> Click on it and you will find a form to fill in.
>> The form asks you to enter the following data
>> Email Address
>> First Name
>> Last Name
>> How do you plan to use the OCR API?
>> After filling it and submit. You may also need to pass reCAPTCHA
>> Then you will receive a confirmation e-mail
>> Click the button "Yes, subscribe me to this list." and you will receive
>> API
>> key by e-mail.
>>
>> ### Baidu OCR
>> This one is also a paid API with free quota provided by Baidu.
>> Baidu OCR supports 10 languages including
>> Chinese and English mixture
>> English
>> Portuguese
>> French
>> German
>> Italian
>> Spanish
>> Russian
>> Japanese
>> Korean
>> This engine can also get position of every character
>>
>> Here are its settings:
>>
>> Detect image direction is suitable for scanned pages.
>> Get position of every character allows you to do more precise operation
>> on
>> some inaccessible application. Enabling this will make recognition
>> slightly
>> slower.
>>
>> Use Accurate API takes longer time but has higher quality and also higher
>> price.
>>
>> It has four endpoints with seperate quota limit.
>>
>> Basic OCR without any information about text location.
>> Currently 50000 times a day.
>> Basic OCR with information about text location.
>> Currently 500 times a day.
>> Accurate OCR without any information about text location.
>> Currently 500 times a day.
>> Accurate with information about text location.
>> Currently 50 times a day.
>>
>> If you checked the high accurate api checkbox you are using accurate API.
>> If you presses NVDA+Shift+R or NVDA+Windows+R, you are using endpoints
>> without any information about text location.
>>
>> Though it provides a quite gengerous free quota, its website is Chinese
>> only and not quite accessible.
>>
>> ### Sougou OCR and Tencent AI OCR
>> These two API are free to use with frequency limit.
>> If you want to by pass the limit you can register your own api key.The
>> website  of these two APIs are also Chinese only and not quite
>> accessible.
>> There is no information about language support in these api document
>> According to my test Chinese and English and their mixture is surpported.
>> There are no additional configuration for these API.
>>
>>
>> On Wed, Mar 13, 2019 at 4:52 PM zvonimir stanečić, 9a5dsz <
>> zvonimirek222@...> wrote:
>>
>>> Hi Larry,
>>>
>>> Can you provide more details about the addon?
>>>
>>> Which languages are supported by the online ocr engine?
>>>
>>>
>>>
>>>
>>>
>>> *From:* nvda-addons@nvda-addons.groups.io <
>>> nvda-addons@nvda-addons.groups.io> *On Behalf Of *Larry Wang
>>> *Sent:* Wednesday, March 13, 2019 9:46 AM
>>> *To:* nvda-addons@nvda-addons.groups.io
>>> *Subject:* [nvda-addons] Online OCR addon #addonrequestreview
>>>
>>>
>>>
>>> Hi everyone!
>>>
>>>
>>>
>>> This is an add on that add online ocr engines for users not using
>>> windows
>>> 10.
>>>
>>> This addon also added "Auto OCR" feature to NVDA. Whenever navigator
>>> object changes, NVDA will automatically run OCR on current navigator
>>> object
>>> with Windows 10 OCR engine.
>>>
>>>
>>>
>>> NVDA+Shift+R Recognize current navigator object  with online OCR engine
>>> and read results directly
>>>
>>> NVDA+ALT+Shift+R Recognize current navigator object with online OCR
>>> engine
>>> and open a result viewer like Windows 10 OCR
>>>
>>> NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
>>> engine and read results directly
>>>
>>> NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
>>> engine.Then open a result viewer like Windows 10 OCR
>>>
>>> The addon can be downloaded at
>>>
>>>
>>> https://github.com/larry801/online_ocr/releases/download/0.1/onlineOCR-0.1-dev.nvda-addon
>>>
>>> Souce code:
>>>
>>> https://github.com/larry801/online_ocr/tree/master/source
>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>>
>
>
>
>



Noelia Ruiz
 

Hi, I tried profile switching after reading code, since I thought that this could have issues. I recommend you to use something like: spec = dic (replacing dict by a dictionary with values and defaults). And then: config.conf.spec sectionName between brackets = spec.
If you want, see for example clipcontentsdesigner add-on. I considered Jamie suggestion to manage configuration. Sorry for writing incorrect symbols from mobile.



Enviado desde mi iPhone

El 14 mar 2019, a las 4:41, Larry Wang <larry.wang.801@...> escribió:

Hi Noelia,

Thanks for your review
Configuration part of this addon mainly comes from NVDA voice panel.I will try to look into why profile switching  fail.Could you describle it precisely?
u"" is used to avoid encoding problem like advanced dialog.Why is it unnecessary?
I will try to imporve comments and documents in 0.2
Cheers,
Larry


On Thu, Mar 14, 2019 at 2:01 AM Noelia Ruiz <nrm1977@...> wrote:
Hi, I think we should wait some days to request more feedback from
people before posting the add-on on the website.
Anyway, these are my preliminar results of review:

* License and copyright: Pass.
* Security: Pass.
* Documentation: Pass with comments. I have found spelling errors and
English speakers could suggest grammar improvements. Also, you may
want to put links to direct downloads (please see other examples if
you want).
* User experience: Fail. For me profiles are not working as expected,
and if the add-on don't support them it should be clarified, since
they are shown in settings dialog.

Comments: You may want to follow NVDA contributing and look at add-on
guidelines to improve readability. For instance, I see that some
comments for translators use sentences which belong to voices dialog,
and some messages have no comment. Also, you use u"" for some messages
and this may not be needed.
Hope we can post this add-on very soon on the website. I think it's
very useful and I see you have studied NVDA's code.

Thanks


2019-03-13 11:15 GMT+01:00, Noelia Ruiz via Groups.Io
<nrm1977=gmail.com@groups.io>:
> Hi, I have cloned the add-on and perform a superfast review of
> important pieces of code, like part of a file for OCR support, and the
> __init__.py file of the plugin.
> I don't have Win 10 here and I will test this later. I'm just writing
> because, with this fast review (with some comments in case you want to
> consider them), I'm very impressed, in general. I think you have
> studied NVDA's code and this is clean and great with some comments.
> Hope this can be poste on the website very soon.
>
> Cheers.
>
> 2019-03-13 10:06 GMT+01:00, Larry Wang <larry.wang.801@...>:
>> Sorry, I forgot to point out that details are in addon document.
>> I paste it here for your convience.
>> # Online OCR addon #
>>
>> This addon aims at enhancing the experience of OCR when using NVDA.
>>
>> Add more accurate online engines to NVDA.
>> Add "Auto OCR" feature. Whenever navigator object changes, NVDA will
>> automatically run OCR on current navigator object with Windows 10 OCR
>> engine.
>>
>> The author of addon have registered account with free API quota and put
>> them on www.nvdacn.com  to make this addon easier to use.Registering your
>> own key is highly recommended.
>>
>> Online engines relies on the use and presence of the following services.
>>
>> https://www.nvdacn.com
>>
>> https://ocr.space/ocrapi
>>
>> http://ai.qq.com
>>
>> http://ai.baidu.com
>>
>> http://ai.sogou.com/
>>
>> ## Hotkeys
>>
>> NVDA+Shift+R Recognize current navigator object  with online OCR engine
>> and
>> read results directly
>> NVDA+ALT+Shift+R Recognize current navigator object with online OCR
>> engine
>> and open a result viewer like Windows 10 OCR
>> NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
>> engine and read results directly
>> NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
>> engine.Then open a result viewer like Windows 10 OCR
>>
>> Ctrl+semicolon Enable or disable "Auto OCR".
>>
>> ## Configuration
>>
>> You can choose recognition engines and configure them in detail in
>> *Online
>> OCR* categroy in NVDA settings dialog.
>>
>> The following two settings are applicable to all engines.
>>
>> API Access Type: How you get access to the corresponding API endpoints.
>> If you choose Use public quota, you are using free quota in an account
>> registered by addon author.
>> If you choose Use your own api key,this addon will use your own api
>> access
>> tokens.
>> There are four engines avaliable.
>>
>> API key or API Secret Key:
>> These are only valid if you choose "use your own api key" in API Access
>> type.
>>
>> ### OCR space
>> This one is a paid API with free quota provided by ocr.space
>> Support 24 languages including
>> Arabic
>> Bulgarian
>> Chinese(Simplified)
>> Chinese(Traditional)
>> Croatian
>> Czech
>> Danish
>> Dutch
>> English
>> Finnish
>> French
>> German
>> Greek
>> Hungarian
>> Korean
>> Italian
>> Japanese
>> Polish
>> Portuguese
>> Russian
>> Slovenian
>> Spanish
>> Swedish
>> Turkish
>>
>> Here are settings for this engine:
>> Detect image orientation
>> If set to true, the api autorotates the image correctly.
>> Scale image for better quality
>> If set to true, the api does some internal upscaling. This can improve
>> the
>> OCR result significantly, especially for low-resolution PDF scans.
>> Optimize for table recognition
>> If set to true, the OCR logic makes sure that the parsed text result is
>> always returned line by line. This switch is recommended for table OCR,
>> receipt OCR, invoice processing and all other type of input documents
>> that
>> have a table like structure.
>>
>> You can get your own free api key by registering on
>> https://ocr.space/ocrapi
>> Find the link "Register for free API key"
>> Click on it and you will find a form to fill in.
>> The form asks you to enter the following data
>> Email Address
>> First Name
>> Last Name
>> How do you plan to use the OCR API?
>> After filling it and submit. You may also need to pass reCAPTCHA
>> Then you will receive a confirmation e-mail
>> Click the button "Yes, subscribe me to this list." and you will receive
>> API
>> key by e-mail.
>>
>> ### Baidu OCR
>> This one is also a paid API with free quota provided by Baidu.
>> Baidu OCR supports 10 languages including
>> Chinese and English mixture
>> English
>> Portuguese
>> French
>> German
>> Italian
>> Spanish
>> Russian
>> Japanese
>> Korean
>> This engine can also get position of every character
>>
>> Here are its settings:
>>
>> Detect image direction is suitable for scanned pages.
>> Get position of every character allows you to do more precise operation
>> on
>> some inaccessible application. Enabling this will make recognition
>> slightly
>> slower.
>>
>> Use Accurate API takes longer time but has higher quality and also higher
>> price.
>>
>> It has four endpoints with seperate quota limit.
>>
>> Basic OCR without any information about text location.
>> Currently 50000 times a day.
>> Basic OCR with information about text location.
>> Currently 500 times a day.
>> Accurate OCR without any information about text location.
>> Currently 500 times a day.
>> Accurate with information about text location.
>> Currently 50 times a day.
>>
>> If you checked the high accurate api checkbox you are using accurate API.
>> If you presses NVDA+Shift+R or NVDA+Windows+R, you are using endpoints
>> without any information about text location.
>>
>> Though it provides a quite gengerous free quota, its website is Chinese
>> only and not quite accessible.
>>
>> ### Sougou OCR and Tencent AI OCR
>> These two API are free to use with frequency limit.
>> If you want to by pass the limit you can register your own api key.The
>> website  of these two APIs are also Chinese only and not quite
>> accessible.
>> There is no information about language support in these api document
>> According to my test Chinese and English and their mixture is surpported.
>> There are no additional configuration for these API.
>>
>>
>> On Wed, Mar 13, 2019 at 4:52 PM zvonimir stanečić, 9a5dsz <
>> zvonimirek222@...> wrote:
>>
>>> Hi Larry,
>>>
>>> Can you provide more details about the addon?
>>>
>>> Which languages are supported by the online ocr engine?
>>>
>>>
>>>
>>>
>>>
>>> *From:* nvda-addons@nvda-addons.groups.io <
>>> nvda-addons@nvda-addons.groups.io> *On Behalf Of *Larry Wang
>>> *Sent:* Wednesday, March 13, 2019 9:46 AM
>>> *To:* nvda-addons@nvda-addons.groups.io
>>> *Subject:* [nvda-addons] Online OCR addon #addonrequestreview
>>>
>>>
>>>
>>> Hi everyone!
>>>
>>>
>>>
>>> This is an add on that add online ocr engines for users not using
>>> windows
>>> 10.
>>>
>>> This addon also added "Auto OCR" feature to NVDA. Whenever navigator
>>> object changes, NVDA will automatically run OCR on current navigator
>>> object
>>> with Windows 10 OCR engine.
>>>
>>>
>>>
>>> NVDA+Shift+R Recognize current navigator object  with online OCR engine
>>> and read results directly
>>>
>>> NVDA+ALT+Shift+R Recognize current navigator object with online OCR
>>> engine
>>> and open a result viewer like Windows 10 OCR
>>>
>>> NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
>>> engine and read results directly
>>>
>>> NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
>>> engine.Then open a result viewer like Windows 10 OCR
>>>
>>> The addon can be downloaded at
>>>
>>>
>>> https://github.com/larry801/online_ocr/releases/download/0.1/onlineOCR-0.1-dev.nvda-addon
>>>
>>> Souce code:
>>>
>>> https://github.com/larry801/online_ocr/tree/master/source
>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>>
>
>
>
>



Larry Wang
 

Hi Noelia and all,
I have addressed all review comments and released 0.2 version.
Here is download link.
The revised document is as follows.
# Online OCR addon #

Author: Larry Wang
NVDA compatibility: from 2018.3 to 2019.1

This addon aims at enhancing the experience of OCR when using NVDA.
There are two main features.

Add "Auto OCR" feature.
Add more accurate online engines to NVDA.

## Auto OCR

Whenever you use object navigation commands to change current navigator object, NVDA will automatically run OCR on current navigator object with Windows 10 OCR engine.

You can use CTRL semicolon Enable or disable "Auto OCR".

## Online OCR

The author of addon have registered account with free API quota and set up a proxy server on www.nvdacn.com to make this addon easier to test at frist. Test quota is limited and may be cancelled by API provider anytime.
It is highly recommended to register your own key according to guide in each engine.

Online engines rely on the use and presence of the following services.






The author of addon have registered account with free API quota and put them on www.nvdacn.com to make this addon easier to use at first. Test quota is limited. Registering your own key is highly recommended for service availability and privacy concern.

### Keyboard commands

NVDA+Shift+R Recognize current navigator object with online OCR engine and read results directly

NVDA+ALT+Shift+R Recognize current navigator object with online OCR engine and open a result viewer like Windows 10 OCR

NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR engine and read results directly

NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR engine. Then open a result viewer like Windows 10 OCR

### Engine Configuration

You can choose recognition engines and configure them in detail in *Online OCR* category in NVDA settings dialog.

The following settings are applicable to all engines.

API Access Type:
This controls how you get access to the corresponding API endpoints.

If you choose "Use public quota", you are using free quota in an account registered by addon author.
If you choose "Use your own API key", this addon will use quota from your own account.


APP ID, API key or API Secret Key:
If you want to use quota from your own account corresponding access tokens is required. Some engines only need API key.
Some engines require two tokens.
These are only valid if you choose "use your own API key" in API Access type.

There are five engines available.

### OCR space
This one is a paid API with free quota provided by https://ocr.space
It supports 24 languages including
Arabic 
Bulgarian 
Chinese(Simplified) 
Chinese(Traditional) 
Croatian 
Czech 
Danish 
Dutch 
English 
Finnish 
French 
German 
Greek 
Hungarian 
Korean 
Italian 
Japanese 
Polish 
Portuguese 
Russian 
Slovenian 
Spanish  
Swedish  
Turkish  

Here are settings for this engine:

Language: Text language for recognition. English by default.

Detect image orientation:
If set to true, the API autorotates the image correctly.

Scale image for better quality
If set to true, the API does some internal upscaling. This can improve the OCR result significantly, especially for low-resolution PDF scans.

Optimize for table recognition 
If set to true, the OCR logic makes sure that the parsed text result is always returned line by line. This switch is recommended for table OCR, receipt OCR, invoice processing and all other type of input documents that have a table like structure.

If you want to use your own key, you also need to specify API Key.

You can get your own free API key by registering on
Here is a simple guide.
Find the link "Register for free API key"
Click on it and you will find a form to fill in.
The form asks you to enter the following data
Email Address 
First Name
Last Name
How do you plan to use the OCR API?
After filling it and submit. You may also need to pass  a captcha
Then you will receive a confirmation e-mail
Find the link named "Yes, subscribe me to this list." in that e-mail. Access that link and you will receive API key by e-mail soon.

### Microsoft Azure OCR
This engine uses OCR API in Microsoft Azure Cognitive Services Computer Vision.

It supports 24 languages including
(Chinese Simplified)
(Chinese Traditional)
(Czech)
(Danish)
(Dutch)
(English)
(Finnish)
(French)
(German)
(Greek)
(Hungarian)
(Italian)
(Japanese)
(Korean)
(Norwegian)
(Polish)
(Portuguese,
(Russian)
(Spanish)
(Swedish)
(Turkish)
(Arabic)
(Romanian)
(Serbian Cyrillic)
(Serbian Latin)
(Slovak)

Here are settings for this engine:

Language: Text language for recognition. Auto detection by default.

Detect image orientation:
If set to true, the API autorotates the image correctly.

If you use your own key, you also need to specify these settings.
Azure resource Region: 
The region you choose when deploying Cognitive Services in Azure Portal.
API key:
The key you get after successfully deploying Cognitive Services in Azure Portal, KEY 2 is recommended.



### Baidu OCR
This one is also a paid API with free quota provided by Baidu.
Baidu OCR supports 10 languages including
Chinese and English mixture
English
Portuguese
French
German
Italian
Spanish
Russian
Japanese
Korean
This engine can also get position of every character

Here are its settings:



Get position of every character allows you to do more precise operation on some inaccessible application. Enabling this will make recognition slightly slower.

Use Accurate API 
If is enabled will use a different endpoint.
That accurate endpoint takes longer time but has higher quality and (If you use your own API key its price is also higher).

It has four endpoints with separate quota limit.

Basic OCR without any information about text location.
Currently 50000 times a day.
Basic OCR with information about text location.
Currently 500 times a day.
Accurate OCR without any information about text location.
Currently 500 times a day.
Accurate with information about text location.
Currently 50 times a day.

If you press NVDA+Shift+R or NVDA+Windows+R, you are using endpoints without any information about text location. 
If you press NVDA+Shift+Alt+R or NVDA+Windows+Alt+R, you are using endpoints with information about text location. 

Though it provides a quite generous free quota, its website is Chinese only and not quite accessible.

### Sougou OCR and Tencent AI OCR
These two API are free to use with frequency limit.
If you want to bypass the limit you can register your own API key. The website of these two APIs are also Chinese only and not quite accessible.
There is no information about language support in these API document
According to my test Chinese and English and their mixture is supported.
There is no additional configuration for these API.



On Thu, Mar 14, 2019 at 1:09 PM Noelia Ruiz <nrm1977@...> wrote:
Hi, I tried profile switching after reading code, since I thought that this could have issues. I recommend you to use something like: spec = dic (replacing dict by a dictionary with values and defaults). And then: config.conf.spec sectionName between brackets = spec.
If you want, see for example clipcontentsdesigner add-on. I considered Jamie suggestion to manage configuration. Sorry for writing incorrect symbols from mobile.



Enviado desde mi iPhone

El 14 mar 2019, a las 4:41, Larry Wang <larry.wang.801@...> escribió:

Hi Noelia,

Thanks for your review
Configuration part of this addon mainly comes from NVDA voice panel.I will try to look into why profile switching  fail.Could you describle it precisely?
u"" is used to avoid encoding problem like advanced dialog.Why is it unnecessary?
I will try to imporve comments and documents in 0.2
Cheers,
Larry


On Thu, Mar 14, 2019 at 2:01 AM Noelia Ruiz <nrm1977@...> wrote:
Hi, I think we should wait some days to request more feedback from
people before posting the add-on on the website.
Anyway, these are my preliminar results of review:

* License and copyright: Pass.
* Security: Pass.
* Documentation: Pass with comments. I have found spelling errors and
English speakers could suggest grammar improvements. Also, you may
want to put links to direct downloads (please see other examples if
you want).
* User experience: Fail. For me profiles are not working as expected,
and if the add-on don't support them it should be clarified, since
they are shown in settings dialog.

Comments: You may want to follow NVDA contributing and look at add-on
guidelines to improve readability. For instance, I see that some
comments for translators use sentences which belong to voices dialog,
and some messages have no comment. Also, you use u"" for some messages
and this may not be needed.
Hope we can post this add-on very soon on the website. I think it's
very useful and I see you have studied NVDA's code.

Thanks


2019-03-13 11:15 GMT+01:00, Noelia Ruiz via Groups.Io
<nrm1977=gmail.com@groups.io>:
> Hi, I have cloned the add-on and perform a superfast review of
> important pieces of code, like part of a file for OCR support, and the
> __init__.py file of the plugin.
> I don't have Win 10 here and I will test this later. I'm just writing
> because, with this fast review (with some comments in case you want to
> consider them), I'm very impressed, in general. I think you have
> studied NVDA's code and this is clean and great with some comments.
> Hope this can be poste on the website very soon.
>
> Cheers.
>
> 2019-03-13 10:06 GMT+01:00, Larry Wang <larry.wang.801@...>:
>> Sorry, I forgot to point out that details are in addon document.
>> I paste it here for your convience.
>> # Online OCR addon #
>>
>> This addon aims at enhancing the experience of OCR when using NVDA.
>>
>> Add more accurate online engines to NVDA.
>> Add "Auto OCR" feature. Whenever navigator object changes, NVDA will
>> automatically run OCR on current navigator object with Windows 10 OCR
>> engine.
>>
>> The author of addon have registered account with free API quota and put
>> them on www.nvdacn.com  to make this addon easier to use.Registering your
>> own key is highly recommended.
>>
>> Online engines relies on the use and presence of the following services.
>>
>> https://www.nvdacn.com
>>
>> https://ocr.space/ocrapi
>>
>> http://ai.qq.com
>>
>> http://ai.baidu.com
>>
>> http://ai.sogou.com/
>>
>> ## Hotkeys
>>
>> NVDA+Shift+R Recognize current navigator object  with online OCR engine
>> and
>> read results directly
>> NVDA+ALT+Shift+R Recognize current navigator object with online OCR
>> engine
>> and open a result viewer like Windows 10 OCR
>> NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
>> engine and read results directly
>> NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
>> engine.Then open a result viewer like Windows 10 OCR
>>
>> Ctrl+semicolon Enable or disable "Auto OCR".
>>
>> ## Configuration
>>
>> You can choose recognition engines and configure them in detail in
>> *Online
>> OCR* categroy in NVDA settings dialog.
>>
>> The following two settings are applicable to all engines.
>>
>> API Access Type: How you get access to the corresponding API endpoints.
>> If you choose Use public quota, you are using free quota in an account
>> registered by addon author.
>> If you choose Use your own api key,this addon will use your own api
>> access
>> tokens.
>> There are four engines avaliable.
>>
>> API key or API Secret Key:
>> These are only valid if you choose "use your own api key" in API Access
>> type.
>>
>> ### OCR space
>> This one is a paid API with free quota provided by ocr.space
>> Support 24 languages including
>> Arabic
>> Bulgarian
>> Chinese(Simplified)
>> Chinese(Traditional)
>> Croatian
>> Czech
>> Danish
>> Dutch
>> English
>> Finnish
>> French
>> German
>> Greek
>> Hungarian
>> Korean
>> Italian
>> Japanese
>> Polish
>> Portuguese
>> Russian
>> Slovenian
>> Spanish
>> Swedish
>> Turkish
>>
>> Here are settings for this engine:
>> Detect image orientation
>> If set to true, the api autorotates the image correctly.
>> Scale image for better quality
>> If set to true, the api does some internal upscaling. This can improve
>> the
>> OCR result significantly, especially for low-resolution PDF scans.
>> Optimize for table recognition
>> If set to true, the OCR logic makes sure that the parsed text result is
>> always returned line by line. This switch is recommended for table OCR,
>> receipt OCR, invoice processing and all other type of input documents
>> that
>> have a table like structure.
>>
>> You can get your own free api key by registering on
>> https://ocr.space/ocrapi
>> Find the link "Register for free API key"
>> Click on it and you will find a form to fill in.
>> The form asks you to enter the following data
>> Email Address
>> First Name
>> Last Name
>> How do you plan to use the OCR API?
>> After filling it and submit. You may also need to pass reCAPTCHA
>> Then you will receive a confirmation e-mail
>> Click the button "Yes, subscribe me to this list." and you will receive
>> API
>> key by e-mail.
>>
>> ### Baidu OCR
>> This one is also a paid API with free quota provided by Baidu.
>> Baidu OCR supports 10 languages including
>> Chinese and English mixture
>> English
>> Portuguese
>> French
>> German
>> Italian
>> Spanish
>> Russian
>> Japanese
>> Korean
>> This engine can also get position of every character
>>
>> Here are its settings:
>>
>> Detect image direction is suitable for scanned pages.
>> Get position of every character allows you to do more precise operation
>> on
>> some inaccessible application. Enabling this will make recognition
>> slightly
>> slower.
>>
>> Use Accurate API takes longer time but has higher quality and also higher
>> price.
>>
>> It has four endpoints with seperate quota limit.
>>
>> Basic OCR without any information about text location.
>> Currently 50000 times a day.
>> Basic OCR with information about text location.
>> Currently 500 times a day.
>> Accurate OCR without any information about text location.
>> Currently 500 times a day.
>> Accurate with information about text location.
>> Currently 50 times a day.
>>
>> If you checked the high accurate api checkbox you are using accurate API.
>> If you presses NVDA+Shift+R or NVDA+Windows+R, you are using endpoints
>> without any information about text location.
>>
>> Though it provides a quite gengerous free quota, its website is Chinese
>> only and not quite accessible.
>>
>> ### Sougou OCR and Tencent AI OCR
>> These two API are free to use with frequency limit.
>> If you want to by pass the limit you can register your own api key.The
>> website  of these two APIs are also Chinese only and not quite
>> accessible.
>> There is no information about language support in these api document
>> According to my test Chinese and English and their mixture is surpported.
>> There are no additional configuration for these API.
>>
>>
>> On Wed, Mar 13, 2019 at 4:52 PM zvonimir stanečić, 9a5dsz <
>> zvonimirek222@...> wrote:
>>
>>> Hi Larry,
>>>
>>> Can you provide more details about the addon?
>>>
>>> Which languages are supported by the online ocr engine?
>>>
>>>
>>>
>>>
>>>
>>> *From:* nvda-addons@nvda-addons.groups.io <
>>> nvda-addons@nvda-addons.groups.io> *On Behalf Of *Larry Wang
>>> *Sent:* Wednesday, March 13, 2019 9:46 AM
>>> *To:* nvda-addons@nvda-addons.groups.io
>>> *Subject:* [nvda-addons] Online OCR addon #addonrequestreview
>>>
>>>
>>>
>>> Hi everyone!
>>>
>>>
>>>
>>> This is an add on that add online ocr engines for users not using
>>> windows
>>> 10.
>>>
>>> This addon also added "Auto OCR" feature to NVDA. Whenever navigator
>>> object changes, NVDA will automatically run OCR on current navigator
>>> object
>>> with Windows 10 OCR engine.
>>>
>>>
>>>
>>> NVDA+Shift+R Recognize current navigator object  with online OCR engine
>>> and read results directly
>>>
>>> NVDA+ALT+Shift+R Recognize current navigator object with online OCR
>>> engine
>>> and open a result viewer like Windows 10 OCR
>>>
>>> NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
>>> engine and read results directly
>>>
>>> NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
>>> engine.Then open a result viewer like Windows 10 OCR
>>>
>>> The addon can be downloaded at
>>>
>>>
>>> https://github.com/larry801/online_ocr/releases/download/0.1/onlineOCR-0.1-dev.nvda-addon
>>>
>>> Souce code:
>>>
>>> https://github.com/larry801/online_ocr/tree/master/source
>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>>
>
>
>
>



Ibrahim Hamadeh
 

hello
after installing the addon, I have noticed that it didn't show well in the settings pannel
and I have found this in the log:
ERROR - unhandled exception (00:50:24.982):
Traceback (most recent call last):
  File "gui\settingsDialogs.pyo", line 2483, in onCategoryChange
  File "gui\settingsDialogs.pyo", line 570, in onCategoryChange
  File "gui\settingsDialogs.pyo", line 548, in _doCategoryChange
  File "gui\settingsDialogs.pyo", line 481, in _getCategoryPanel
  File "gui\settingsDialogs.pyo", line 248, in __init__
  File "C:\Users\ibrahim\AppData\Roaming\nvda\addons\onlineOCR\globalPlugins\onlineOCR\abstractEngine.py", line 395, in makeSettings
AttributeError: 'NoneType' object has no attribute 'description'

thank you.
ibrahim


On 14-Mar-19 3:57 PM, Larry Wang wrote:
Hi Noelia and all,
I have addressed all review comments and released 0.2 version.
Here is download link.
The revised document is as follows.
# Online OCR addon #

Author: Larry Wang
NVDA compatibility: from 2018.3 to 2019.1

This addon aims at enhancing the experience of OCR when using NVDA.
There are two main features.

Add "Auto OCR" feature.
Add more accurate online engines to NVDA.

## Auto OCR

Whenever you use object navigation commands to change current navigator object, NVDA will automatically run OCR on current navigator object with Windows 10 OCR engine.

You can use CTRL semicolon Enable or disable "Auto OCR".

## Online OCR

The author of addon have registered account with free API quota and set up a proxy server on www.nvdacn.com to make this addon easier to test at frist. Test quota is limited and may be cancelled by API provider anytime.
It is highly recommended to register your own key according to guide in each engine.

Online engines rely on the use and presence of the following services.






The author of addon have registered account with free API quota and put them on www.nvdacn.com to make this addon easier to use at first. Test quota is limited. Registering your own key is highly recommended for service availability and privacy concern.

### Keyboard commands

NVDA+Shift+R Recognize current navigator object with online OCR engine and read results directly

NVDA+ALT+Shift+R Recognize current navigator object with online OCR engine and open a result viewer like Windows 10 OCR

NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR engine and read results directly

NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR engine. Then open a result viewer like Windows 10 OCR

### Engine Configuration

You can choose recognition engines and configure them in detail in *Online OCR* category in NVDA settings dialog.

The following settings are applicable to all engines.

API Access Type:
This controls how you get access to the corresponding API endpoints.

If you choose "Use public quota", you are using free quota in an account registered by addon author.
If you choose "Use your own API key", this addon will use quota from your own account.


APP ID, API key or API Secret Key:
If you want to use quota from your own account corresponding access tokens is required. Some engines only need API key.
Some engines require two tokens.
These are only valid if you choose "use your own API key" in API Access type.

There are five engines available.

### OCR space
This one is a paid API with free quota provided by https://ocr.space
It supports 24 languages including
Arabic 
Bulgarian 
Chinese(Simplified) 
Chinese(Traditional) 
Croatian 
Czech 
Danish 
Dutch 
English 
Finnish 
French 
German 
Greek 
Hungarian 
Korean 
Italian 
Japanese 
Polish 
Portuguese 
Russian 
Slovenian 
Spanish  
Swedish  
Turkish  

Here are settings for this engine:

Language: Text language for recognition. English by default.

Detect image orientation:
If set to true, the API autorotates the image correctly.

Scale image for better quality
If set to true, the API does some internal upscaling. This can improve the OCR result significantly, especially for low-resolution PDF scans.

Optimize for table recognition 
If set to true, the OCR logic makes sure that the parsed text result is always returned line by line. This switch is recommended for table OCR, receipt OCR, invoice processing and all other type of input documents that have a table like structure.

If you want to use your own key, you also need to specify API Key.

You can get your own free API key by registering on
Here is a simple guide.
Find the link "Register for free API key"
Click on it and you will find a form to fill in.
The form asks you to enter the following data
Email Address 
First Name
Last Name
How do you plan to use the OCR API?
After filling it and submit. You may also need to pass  a captcha
Then you will receive a confirmation e-mail
Find the link named "Yes, subscribe me to this list." in that e-mail. Access that link and you will receive API key by e-mail soon.

### Microsoft Azure OCR
This engine uses OCR API in Microsoft Azure Cognitive Services Computer Vision.

It supports 24 languages including
(Chinese Simplified)
(Chinese Traditional)
(Czech)
(Danish)
(Dutch)
(English)
(Finnish)
(French)
(German)
(Greek)
(Hungarian)
(Italian)
(Japanese)
(Korean)
(Norwegian)
(Polish)
(Portuguese,
(Russian)
(Spanish)
(Swedish)
(Turkish)
(Arabic)
(Romanian)
(Serbian Cyrillic)
(Serbian Latin)
(Slovak)

Here are settings for this engine:

Language: Text language for recognition. Auto detection by default.

Detect image orientation:
If set to true, the API autorotates the image correctly.

If you use your own key, you also need to specify these settings.
Azure resource Region: 
The region you choose when deploying Cognitive Services in Azure Portal.
API key:
The key you get after successfully deploying Cognitive Services in Azure Portal, KEY 2 is recommended.



### Baidu OCR
This one is also a paid API with free quota provided by Baidu.
Baidu OCR supports 10 languages including
Chinese and English mixture
English
Portuguese
French
German
Italian
Spanish
Russian
Japanese
Korean
This engine can also get position of every character

Here are its settings:



Get position of every character allows you to do more precise operation on some inaccessible application. Enabling this will make recognition slightly slower.

Use Accurate API 
If is enabled will use a different endpoint.
That accurate endpoint takes longer time but has higher quality and (If you use your own API key its price is also higher).

It has four endpoints with separate quota limit.

Basic OCR without any information about text location.
Currently 50000 times a day.
Basic OCR with information about text location.
Currently 500 times a day.
Accurate OCR without any information about text location.
Currently 500 times a day.
Accurate with information about text location.
Currently 50 times a day.

If you press NVDA+Shift+R or NVDA+Windows+R, you are using endpoints without any information about text location. 
If you press NVDA+Shift+Alt+R or NVDA+Windows+Alt+R, you are using endpoints with information about text location. 

Though it provides a quite generous free quota, its website is Chinese only and not quite accessible.

### Sougou OCR and Tencent AI OCR
These two API are free to use with frequency limit.
If you want to bypass the limit you can register your own API key. The website of these two APIs are also Chinese only and not quite accessible.
There is no information about language support in these API document
According to my test Chinese and English and their mixture is supported.
There is no additional configuration for these API.



On Thu, Mar 14, 2019 at 1:09 PM Noelia Ruiz <nrm1977@...> wrote:
Hi, I tried profile switching after reading code, since I thought that this could have issues. I recommend you to use something like: spec = dic (replacing dict by a dictionary with values and defaults). And then: config.conf.spec sectionName between brackets = spec.
If you want, see for example clipcontentsdesigner add-on. I considered Jamie suggestion to manage configuration. Sorry for writing incorrect symbols from mobile.



Enviado desde mi iPhone

El 14 mar 2019, a las 4:41, Larry Wang <larry.wang.801@...> escribió:

Hi Noelia,

Thanks for your review
Configuration part of this addon mainly comes from NVDA voice panel.I will try to look into why profile switching  fail.Could you describle it precisely?
u"" is used to avoid encoding problem like advanced dialog.Why is it unnecessary?
I will try to imporve comments and documents in 0.2
Cheers,
Larry


On Thu, Mar 14, 2019 at 2:01 AM Noelia Ruiz <nrm1977@...> wrote:
Hi, I think we should wait some days to request more feedback from
people before posting the add-on on the website.
Anyway, these are my preliminar results of review:

* License and copyright: Pass.
* Security: Pass.
* Documentation: Pass with comments. I have found spelling errors and
English speakers could suggest grammar improvements. Also, you may
want to put links to direct downloads (please see other examples if
you want).
* User experience: Fail. For me profiles are not working as expected,
and if the add-on don't support them it should be clarified, since
they are shown in settings dialog.

Comments: You may want to follow NVDA contributing and look at add-on
guidelines to improve readability. For instance, I see that some
comments for translators use sentences which belong to voices dialog,
and some messages have no comment. Also, you use u"" for some messages
and this may not be needed.
Hope we can post this add-on very soon on the website. I think it's
very useful and I see you have studied NVDA's code.

Thanks


2019-03-13 11:15 GMT+01:00, Noelia Ruiz via Groups.Io
<nrm1977=gmail.com@groups.io>:
> Hi, I have cloned the add-on and perform a superfast review of
> important pieces of code, like part of a file for OCR support, and the
> __init__.py file of the plugin.
> I don't have Win 10 here and I will test this later. I'm just writing
> because, with this fast review (with some comments in case you want to
> consider them), I'm very impressed, in general. I think you have
> studied NVDA's code and this is clean and great with some comments.
> Hope this can be poste on the website very soon.
>
> Cheers.
>
> 2019-03-13 10:06 GMT+01:00, Larry Wang <larry.wang.801@...>:
>> Sorry, I forgot to point out that details are in addon document.
>> I paste it here for your convience.
>> # Online OCR addon #
>>
>> This addon aims at enhancing the experience of OCR when using NVDA.
>>
>> Add more accurate online engines to NVDA.
>> Add "Auto OCR" feature. Whenever navigator object changes, NVDA will
>> automatically run OCR on current navigator object with Windows 10 OCR
>> engine.
>>
>> The author of addon have registered account with free API quota and put
>> them on www.nvdacn.com  to make this addon easier to use.Registering your
>> own key is highly recommended.
>>
>> Online engines relies on the use and presence of the following services.
>>
>> https://www.nvdacn.com
>>
>> https://ocr.space/ocrapi
>>
>> http://ai.qq.com
>>
>> http://ai.baidu.com
>>
>> http://ai.sogou.com/
>>
>> ## Hotkeys
>>
>> NVDA+Shift+R Recognize current navigator object  with online OCR engine
>> and
>> read results directly
>> NVDA+ALT+Shift+R Recognize current navigator object with online OCR
>> engine
>> and open a result viewer like Windows 10 OCR
>> NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
>> engine and read results directly
>> NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
>> engine.Then open a result viewer like Windows 10 OCR
>>
>> Ctrl+semicolon Enable or disable "Auto OCR".
>>
>> ## Configuration
>>
>> You can choose recognition engines and configure them in detail in
>> *Online
>> OCR* categroy in NVDA settings dialog.
>>
>> The following two settings are applicable to all engines.
>>
>> API Access Type: How you get access to the corresponding API endpoints.
>> If you choose Use public quota, you are using free quota in an account
>> registered by addon author.
>> If you choose Use your own api key,this addon will use your own api
>> access
>> tokens.
>> There are four engines avaliable.
>>
>> API key or API Secret Key:
>> These are only valid if you choose "use your own api key" in API Access
>> type.
>>
>> ### OCR space
>> This one is a paid API with free quota provided by ocr.space
>> Support 24 languages including
>> Arabic
>> Bulgarian
>> Chinese(Simplified)
>> Chinese(Traditional)
>> Croatian
>> Czech
>> Danish
>> Dutch
>> English
>> Finnish
>> French
>> German
>> Greek
>> Hungarian
>> Korean
>> Italian
>> Japanese
>> Polish
>> Portuguese
>> Russian
>> Slovenian
>> Spanish
>> Swedish
>> Turkish
>>
>> Here are settings for this engine:
>> Detect image orientation
>> If set to true, the api autorotates the image correctly.
>> Scale image for better quality
>> If set to true, the api does some internal upscaling. This can improve
>> the
>> OCR result significantly, especially for low-resolution PDF scans.
>> Optimize for table recognition
>> If set to true, the OCR logic makes sure that the parsed text result is
>> always returned line by line. This switch is recommended for table OCR,
>> receipt OCR, invoice processing and all other type of input documents
>> that
>> have a table like structure.
>>
>> You can get your own free api key by registering on
>> https://ocr.space/ocrapi
>> Find the link "Register for free API key"
>> Click on it and you will find a form to fill in.
>> The form asks you to enter the following data
>> Email Address
>> First Name
>> Last Name
>> How do you plan to use the OCR API?
>> After filling it and submit. You may also need to pass reCAPTCHA
>> Then you will receive a confirmation e-mail
>> Click the button "Yes, subscribe me to this list." and you will receive
>> API
>> key by e-mail.
>>
>> ### Baidu OCR
>> This one is also a paid API with free quota provided by Baidu.
>> Baidu OCR supports 10 languages including
>> Chinese and English mixture
>> English
>> Portuguese
>> French
>> German
>> Italian
>> Spanish
>> Russian
>> Japanese
>> Korean
>> This engine can also get position of every character
>>
>> Here are its settings:
>>
>> Detect image direction is suitable for scanned pages.
>> Get position of every character allows you to do more precise operation
>> on
>> some inaccessible application. Enabling this will make recognition
>> slightly
>> slower.
>>
>> Use Accurate API takes longer time but has higher quality and also higher
>> price.
>>
>> It has four endpoints with seperate quota limit.
>>
>> Basic OCR without any information about text location.
>> Currently 50000 times a day.
>> Basic OCR with information about text location.
>> Currently 500 times a day.
>> Accurate OCR without any information about text location.
>> Currently 500 times a day.
>> Accurate with information about text location.
>> Currently 50 times a day.
>>
>> If you checked the high accurate api checkbox you are using accurate API.
>> If you presses NVDA+Shift+R or NVDA+Windows+R, you are using endpoints
>> without any information about text location.
>>
>> Though it provides a quite gengerous free quota, its website is Chinese
>> only and not quite accessible.
>>
>> ### Sougou OCR and Tencent AI OCR
>> These two API are free to use with frequency limit.
>> If you want to by pass the limit you can register your own api key.The
>> website  of these two APIs are also Chinese only and not quite
>> accessible.
>> There is no information about language support in these api document
>> According to my test Chinese and English and their mixture is surpported.
>> There are no additional configuration for these API.
>>
>>
>> On Wed, Mar 13, 2019 at 4:52 PM zvonimir stanečić, 9a5dsz <
>> zvonimirek222@...> wrote:
>>
>>> Hi Larry,
>>>
>>> Can you provide more details about the addon?
>>>
>>> Which languages are supported by the online ocr engine?
>>>
>>>
>>>
>>>
>>>
>>> *From:* nvda-addons@nvda-addons.groups.io <
>>> nvda-addons@nvda-addons.groups.io> *On Behalf Of *Larry Wang
>>> *Sent:* Wednesday, March 13, 2019 9:46 AM
>>> *To:* nvda-addons@nvda-addons.groups.io
>>> *Subject:* [nvda-addons] Online OCR addon #addonrequestreview
>>>
>>>
>>>
>>> Hi everyone!
>>>
>>>
>>>
>>> This is an add on that add online ocr engines for users not using
>>> windows
>>> 10.
>>>
>>> This addon also added "Auto OCR" feature to NVDA. Whenever navigator
>>> object changes, NVDA will automatically run OCR on current navigator
>>> object
>>> with Windows 10 OCR engine.
>>>
>>>
>>>
>>> NVDA+Shift+R Recognize current navigator object  with online OCR engine
>>> and read results directly
>>>
>>> NVDA+ALT+Shift+R Recognize current navigator object with online OCR
>>> engine
>>> and open a result viewer like Windows 10 OCR
>>>
>>> NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
>>> engine and read results directly
>>>
>>> NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
>>> engine.Then open a result viewer like Windows 10 OCR
>>>
>>> The addon can be downloaded at
>>>
>>>
>>> https://github.com/larry801/online_ocr/releases/download/0.1/onlineOCR-0.1-dev.nvda-addon
>>>
>>> Souce code:
>>>
>>> https://github.com/larry801/online_ocr/tree/master/source
>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>>
>
>
>
>




Dickson Tan
 

Hi,

I got an error on first restart of NVDA after installing the add-on.


ERROR - external:globalPlugins.onlineOCR.abstractEngine.AbstractEngineHandler.setCurrentEngine (18:46:17.641):
setSynth
Traceback (most recent call last):
  File "C:\Users\Dickson\AppData\Roaming\nvda\addons\onlineOCR\globalPlugins\onlineOCR\abstractEngine.py", line 113, in setCurrentEngine
  File "C:\Users\Dickson\AppData\Roaming\nvda\addons\onlineOCR\globalPlugins\onlineOCR\abstractEngine.py", line 143, in getEngineInstance
  File "C:\Users\Dickson\AppData\Roaming\nvda\addons\onlineOCR\globalPlugins\onlineOCR\abstractEngine.py", line 353, in getConfigSpec
  File "configobj\__init__.pyc", line 502, in __getitem__
KeyError: '__many__'


On 14/3/2019 9:57 PM, Larry Wang wrote:
Hi Noelia and all,
I have addressed all review comments and released 0.2 version.
Here is download link.
The revised document is as follows.
# Online OCR addon #

Author: Larry Wang
NVDA compatibility: from 2018.3 to 2019.1

This addon aims at enhancing the experience of OCR when using NVDA.
There are two main features.

Add "Auto OCR" feature.
Add more accurate online engines to NVDA.

## Auto OCR

Whenever you use object navigation commands to change current navigator object, NVDA will automatically run OCR on current navigator object with Windows 10 OCR engine.

You can use CTRL semicolon Enable or disable "Auto OCR".

## Online OCR

The author of addon have registered account with free API quota and set up a proxy server on www.nvdacn.com to make this addon easier to test at frist. Test quota is limited and may be cancelled by API provider anytime.
It is highly recommended to register your own key according to guide in each engine.

Online engines rely on the use and presence of the following services.






The author of addon have registered account with free API quota and put them on www.nvdacn.com to make this addon easier to use at first. Test quota is limited. Registering your own key is highly recommended for service availability and privacy concern.

### Keyboard commands

NVDA+Shift+R Recognize current navigator object with online OCR engine and read results directly

NVDA+ALT+Shift+R Recognize current navigator object with online OCR engine and open a result viewer like Windows 10 OCR

NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR engine and read results directly

NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR engine. Then open a result viewer like Windows 10 OCR

### Engine Configuration

You can choose recognition engines and configure them in detail in *Online OCR* category in NVDA settings dialog.

The following settings are applicable to all engines.

API Access Type:
This controls how you get access to the corresponding API endpoints.

If you choose "Use public quota", you are using free quota in an account registered by addon author.
If you choose "Use your own API key", this addon will use quota from your own account.


APP ID, API key or API Secret Key:
If you want to use quota from your own account corresponding access tokens is required. Some engines only need API key.
Some engines require two tokens.
These are only valid if you choose "use your own API key" in API Access type.

There are five engines available.

### OCR space
This one is a paid API with free quota provided by https://ocr.space
It supports 24 languages including
Arabic 
Bulgarian 
Chinese(Simplified) 
Chinese(Traditional) 
Croatian 
Czech 
Danish 
Dutch 
English 
Finnish 
French 
German 
Greek 
Hungarian 
Korean 
Italian 
Japanese 
Polish 
Portuguese 
Russian 
Slovenian 
Spanish  
Swedish  
Turkish  

Here are settings for this engine:

Language: Text language for recognition. English by default.

Detect image orientation:
If set to true, the API autorotates the image correctly.

Scale image for better quality
If set to true, the API does some internal upscaling. This can improve the OCR result significantly, especially for low-resolution PDF scans.

Optimize for table recognition 
If set to true, the OCR logic makes sure that the parsed text result is always returned line by line. This switch is recommended for table OCR, receipt OCR, invoice processing and all other type of input documents that have a table like structure.

If you want to use your own key, you also need to specify API Key.

You can get your own free API key by registering on
Here is a simple guide.
Find the link "Register for free API key"
Click on it and you will find a form to fill in.
The form asks you to enter the following data
Email Address 
First Name
Last Name
How do you plan to use the OCR API?
After filling it and submit. You may also need to pass  a captcha
Then you will receive a confirmation e-mail
Find the link named "Yes, subscribe me to this list." in that e-mail. Access that link and you will receive API key by e-mail soon.

### Microsoft Azure OCR
This engine uses OCR API in Microsoft Azure Cognitive Services Computer Vision.

It supports 24 languages including
(Chinese Simplified)
(Chinese Traditional)
(Czech)
(Danish)
(Dutch)
(English)
(Finnish)
(French)
(German)
(Greek)
(Hungarian)
(Italian)
(Japanese)
(Korean)
(Norwegian)
(Polish)
(Portuguese,
(Russian)
(Spanish)
(Swedish)
(Turkish)
(Arabic)
(Romanian)
(Serbian Cyrillic)
(Serbian Latin)
(Slovak)

Here are settings for this engine:

Language: Text language for recognition. Auto detection by default.

Detect image orientation:
If set to true, the API autorotates the image correctly.

If you use your own key, you also need to specify these settings.
Azure resource Region: 
The region you choose when deploying Cognitive Services in Azure Portal.
API key:
The key you get after successfully deploying Cognitive Services in Azure Portal, KEY 2 is recommended.



### Baidu OCR
This one is also a paid API with free quota provided by Baidu.
Baidu OCR supports 10 languages including
Chinese and English mixture
English
Portuguese
French
German
Italian
Spanish
Russian
Japanese
Korean
This engine can also get position of every character

Here are its settings:



Get position of every character allows you to do more precise operation on some inaccessible application. Enabling this will make recognition slightly slower.

Use Accurate API 
If is enabled will use a different endpoint.
That accurate endpoint takes longer time but has higher quality and (If you use your own API key its price is also higher).

It has four endpoints with separate quota limit.

Basic OCR without any information about text location.
Currently 50000 times a day.
Basic OCR with information about text location.
Currently 500 times a day.
Accurate OCR without any information about text location.
Currently 500 times a day.
Accurate with information about text location.
Currently 50 times a day.

If you press NVDA+Shift+R or NVDA+Windows+R, you are using endpoints without any information about text location. 
If you press NVDA+Shift+Alt+R or NVDA+Windows+Alt+R, you are using endpoints with information about text location. 

Though it provides a quite generous free quota, its website is Chinese only and not quite accessible.

### Sougou OCR and Tencent AI OCR
These two API are free to use with frequency limit.
If you want to bypass the limit you can register your own API key. The website of these two APIs are also Chinese only and not quite accessible.
There is no information about language support in these API document
According to my test Chinese and English and their mixture is supported.
There is no additional configuration for these API.



On Thu, Mar 14, 2019 at 1:09 PM Noelia Ruiz <nrm1977@...> wrote:
Hi, I tried profile switching after reading code, since I thought that this could have issues. I recommend you to use something like: spec = dic (replacing dict by a dictionary with values and defaults). And then: config.conf.spec sectionName between brackets = spec.
If you want, see for example clipcontentsdesigner add-on. I considered Jamie suggestion to manage configuration. Sorry for writing incorrect symbols from mobile.



Enviado desde mi iPhone

El 14 mar 2019, a las 4:41, Larry Wang <larry.wang.801@...> escribió:

Hi Noelia,

Thanks for your review
Configuration part of this addon mainly comes from NVDA voice panel.I will try to look into why profile switching  fail.Could you describle it precisely?
u"" is used to avoid encoding problem like advanced dialog.Why is it unnecessary?
I will try to imporve comments and documents in 0.2
Cheers,
Larry


On Thu, Mar 14, 2019 at 2:01 AM Noelia Ruiz <nrm1977@...> wrote:
Hi, I think we should wait some days to request more feedback from
people before posting the add-on on the website.
Anyway, these are my preliminar results of review:

* License and copyright: Pass.
* Security: Pass.
* Documentation: Pass with comments. I have found spelling errors and
English speakers could suggest grammar improvements. Also, you may
want to put links to direct downloads (please see other examples if
you want).
* User experience: Fail. For me profiles are not working as expected,
and if the add-on don't support them it should be clarified, since
they are shown in settings dialog.

Comments: You may want to follow NVDA contributing and look at add-on
guidelines to improve readability. For instance, I see that some
comments for translators use sentences which belong to voices dialog,
and some messages have no comment. Also, you use u"" for some messages
and this may not be needed.
Hope we can post this add-on very soon on the website. I think it's
very useful and I see you have studied NVDA's code.

Thanks


2019-03-13 11:15 GMT+01:00, Noelia Ruiz via Groups.Io
<nrm1977=gmail.com@groups.io>:
> Hi, I have cloned the add-on and perform a superfast review of
> important pieces of code, like part of a file for OCR support, and the
> __init__.py file of the plugin.
> I don't have Win 10 here and I will test this later. I'm just writing
> because, with this fast review (with some comments in case you want to
> consider them), I'm very impressed, in general. I think you have
> studied NVDA's code and this is clean and great with some comments.
> Hope this can be poste on the website very soon.
>
> Cheers.
>
> 2019-03-13 10:06 GMT+01:00, Larry Wang <larry.wang.801@...>:
>> Sorry, I forgot to point out that details are in addon document.
>> I paste it here for your convience.
>> # Online OCR addon #
>>
>> This addon aims at enhancing the experience of OCR when using NVDA.
>>
>> Add more accurate online engines to NVDA.
>> Add "Auto OCR" feature. Whenever navigator object changes, NVDA will
>> automatically run OCR on current navigator object with Windows 10 OCR
>> engine.
>>
>> The author of addon have registered account with free API quota and put
>> them on www.nvdacn.com  to make this addon easier to use.Registering your
>> own key is highly recommended.
>>
>> Online engines relies on the use and presence of the following services.
>>
>> https://www.nvdacn.com
>>
>> https://ocr.space/ocrapi
>>
>> http://ai.qq.com
>>
>> http://ai.baidu.com
>>
>> http://ai.sogou.com/
>>
>> ## Hotkeys
>>
>> NVDA+Shift+R Recognize current navigator object  with online OCR engine
>> and
>> read results directly
>> NVDA+ALT+Shift+R Recognize current navigator object with online OCR
>> engine
>> and open a result viewer like Windows 10 OCR
>> NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
>> engine and read results directly
>> NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
>> engine.Then open a result viewer like Windows 10 OCR
>>
>> Ctrl+semicolon Enable or disable "Auto OCR".
>>
>> ## Configuration
>>
>> You can choose recognition engines and configure them in detail in
>> *Online
>> OCR* categroy in NVDA settings dialog.
>>
>> The following two settings are applicable to all engines.
>>
>> API Access Type: How you get access to the corresponding API endpoints.
>> If you choose Use public quota, you are using free quota in an account
>> registered by addon author.
>> If you choose Use your own api key,this addon will use your own api
>> access
>> tokens.
>> There are four engines avaliable.
>>
>> API key or API Secret Key:
>> These are only valid if you choose "use your own api key" in API Access
>> type.
>>
>> ### OCR space
>> This one is a paid API with free quota provided by ocr.space
>> Support 24 languages including
>> Arabic
>> Bulgarian
>> Chinese(Simplified)
>> Chinese(Traditional)
>> Croatian
>> Czech
>> Danish
>> Dutch
>> English
>> Finnish
>> French
>> German
>> Greek
>> Hungarian
>> Korean
>> Italian
>> Japanese
>> Polish
>> Portuguese
>> Russian
>> Slovenian
>> Spanish
>> Swedish
>> Turkish
>>
>> Here are settings for this engine:
>> Detect image orientation
>> If set to true, the api autorotates the image correctly.
>> Scale image for better quality
>> If set to true, the api does some internal upscaling. This can improve
>> the
>> OCR result significantly, especially for low-resolution PDF scans.
>> Optimize for table recognition
>> If set to true, the OCR logic makes sure that the parsed text result is
>> always returned line by line. This switch is recommended for table OCR,
>> receipt OCR, invoice processing and all other type of input documents
>> that
>> have a table like structure.
>>
>> You can get your own free api key by registering on
>> https://ocr.space/ocrapi
>> Find the link "Register for free API key"
>> Click on it and you will find a form to fill in.
>> The form asks you to enter the following data
>> Email Address
>> First Name
>> Last Name
>> How do you plan to use the OCR API?
>> After filling it and submit. You may also need to pass reCAPTCHA
>> Then you will receive a confirmation e-mail
>> Click the button "Yes, subscribe me to this list." and you will receive
>> API
>> key by e-mail.
>>
>> ### Baidu OCR
>> This one is also a paid API with free quota provided by Baidu.
>> Baidu OCR supports 10 languages including
>> Chinese and English mixture
>> English
>> Portuguese
>> French
>> German
>> Italian
>> Spanish
>> Russian
>> Japanese
>> Korean
>> This engine can also get position of every character
>>
>> Here are its settings:
>>
>> Detect image direction is suitable for scanned pages.
>> Get position of every character allows you to do more precise operation
>> on
>> some inaccessible application. Enabling this will make recognition
>> slightly
>> slower.
>>
>> Use Accurate API takes longer time but has higher quality and also higher
>> price.
>>
>> It has four endpoints with seperate quota limit.
>>
>> Basic OCR without any information about text location.
>> Currently 50000 times a day.
>> Basic OCR with information about text location.
>> Currently 500 times a day.
>> Accurate OCR without any information about text location.
>> Currently 500 times a day.
>> Accurate with information about text location.
>> Currently 50 times a day.
>>
>> If you checked the high accurate api checkbox you are using accurate API.
>> If you presses NVDA+Shift+R or NVDA+Windows+R, you are using endpoints
>> without any information about text location.
>>
>> Though it provides a quite gengerous free quota, its website is Chinese
>> only and not quite accessible.
>>
>> ### Sougou OCR and Tencent AI OCR
>> These two API are free to use with frequency limit.
>> If you want to by pass the limit you can register your own api key.The
>> website  of these two APIs are also Chinese only and not quite
>> accessible.
>> There is no information about language support in these api document
>> According to my test Chinese and English and their mixture is surpported.
>> There are no additional configuration for these API.
>>
>>
>> On Wed, Mar 13, 2019 at 4:52 PM zvonimir stanečić, 9a5dsz <
>> zvonimirek222@...> wrote:
>>
>>> Hi Larry,
>>>
>>> Can you provide more details about the addon?
>>>
>>> Which languages are supported by the online ocr engine?
>>>
>>>
>>>
>>>
>>>
>>> *From:* nvda-addons@nvda-addons.groups.io <
>>> nvda-addons@nvda-addons.groups.io> *On Behalf Of *Larry Wang
>>> *Sent:* Wednesday, March 13, 2019 9:46 AM
>>> *To:* nvda-addons@nvda-addons.groups.io
>>> *Subject:* [nvda-addons] Online OCR addon #addonrequestreview
>>>
>>>
>>>
>>> Hi everyone!
>>>
>>>
>>>
>>> This is an add on that add online ocr engines for users not using
>>> windows
>>> 10.
>>>
>>> This addon also added "Auto OCR" feature to NVDA. Whenever navigator
>>> object changes, NVDA will automatically run OCR on current navigator
>>> object
>>> with Windows 10 OCR engine.
>>>
>>>
>>>
>>> NVDA+Shift+R Recognize current navigator object  with online OCR engine
>>> and read results directly
>>>
>>> NVDA+ALT+Shift+R Recognize current navigator object with online OCR
>>> engine
>>> and open a result viewer like Windows 10 OCR
>>>
>>> NVDA+Windows+R Recognizes the text in clipboard images with Custom OCR
>>> engine and read results directly
>>>
>>> NVDA+Alt+Windows+R Recognizes image in clipboard with online OCR
>>> engine.Then open a result viewer like Windows 10 OCR
>>>
>>> The addon can be downloaded at
>>>
>>>
>>> https://github.com/larry801/online_ocr/releases/download/0.1/onlineOCR-0.1-dev.nvda-addon
>>>
>>> Souce code:
>>>
>>> https://github.com/larry801/online_ocr/tree/master/source
>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>>
>
>
>
>



Larry Wang
 

Hi everyone,

I am happy to relase version 0.3 of onine ocr addon.
Changes in this version include:
Fix issue about new installation.
Add detail documentation on how to get API key of Microsoft Azure OCR
Removed auto OCR since this feature is problematic and may confuse with online engines. Auto OCR will be a seperate addon, when it is stable enough.

Here is download link


Cheers,
Larry

Robert Hänggi
 

The well known Unicode error again:

Error importing global plugin onlineOCR
Traceback (most recent call last):
File "globalPluginHandler.pyc", line 22, in listPlugins
File "C:\Users\Robert
Hänggi\AppData\Roaming\nvda\addons\onlineOCR\globalPlugins\onlineOCR\__init__.py",
line 15, in <module>
File "C:\Users\Robert
Hänggi\AppData\Roaming\nvda\addons\onlineOCR\globalPlugins\onlineOCR\onlineOCRHandler.py",
line 32, in <module>
File "ntpath.pyc", line 85, in join
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position
15: ordinal not in range(128)

Could you please change the gestures such that they do not collide
with other addOn's?
For instance NVDA+Windows+R is used by GoldenCursor
You could use double invocation of gestures to open the browseable
message instead of assigning four separate keystrokes.
Thanks
Robert

On 16/03/2019, Larry Wang <larry.wang.801@...> wrote:
Hi everyone,

I am happy to relase version 0.3 of onine ocr addon.
Changes in this version include:
Fix issue about new installation.
Add detail documentation on how to get API key of Microsoft Azure OCR
Removed auto OCR since this feature is problematic and may confuse with
online engines. Auto OCR will be a seperate addon, when it is stable
enough.

Here is download link

https://github.com/larry801/online_ocr/releases/download/0.3/onlineOCR-0.3-dev.nvda-addon

Cheers,
Larry



el-feel <fathy.mohamed00@...>
 

Why are not there any add ons to nvda that support captcha?

2019-03-16 15:41 غرينتش+02:00, Larry Wang <larry.wang.801@...>:

Hi everyone,

I am happy to relase version 0.3 of onine ocr addon.
Changes in this version include:
Fix issue about new installation.
Add detail documentation on how to get API key of Microsoft Azure OCR
Removed auto OCR since this feature is problematic and may confuse with
online engines. Auto OCR will be a seperate addon, when it is stable
enough.

Here is download link

https://github.com/larry801/online_ocr/releases/download/0.3/onlineOCR-0.3-dev.nvda-addon

Cheers,
Larry



Michal Suchý
 

I have same problem. I have same errors in Nvda log.

 

Maybe because that's not that easy to do?

But one can always learn programming then dive into this pool and see if one can do it before someone else.



Cheers,
Marcio AKA Starboy
Follow or add me on Facebook

Em 16/03/2019 12:24, el-feel escreveu:

Why are not there any add ons to nvda that support captcha?

2019-03-16 15:41 غرينتش+02:00, Larry Wang <larry.wang.801@...>:
Hi everyone,

I am happy to relase version 0.3 of onine ocr addon.
Changes in this version include:
Fix issue about new installation.
Add detail documentation on how to get API key of Microsoft Azure OCR
Removed auto OCR since this feature is problematic and may confuse with
online engines. Auto OCR will be a seperate addon, when it is stable
enough.

Here is download link

https://github.com/larry801/online_ocr/releases/download/0.3/onlineOCR-0.3-dev.nvda-addon

Cheers,
Larry


        






Larry Wang
 

Develop a usable captcha solving model is not easy,
but there are plenty of external services available.
I am working on a solution based on https://www.captchadecoder.com  since it provide trial and do not require a credit card.


On Sun, Mar 17, 2019 at 7:36 AM marcio via Groups.Io <marcinhorj21=yahoo.com.br@groups.io> wrote:

Maybe because that's not that easy to do?

But one can always learn programming then dive into this pool and see if one can do it before someone else.



Cheers,
Marcio AKA Starboy
Follow or add me on Facebook

Em 16/03/2019 12:24, el-feel escreveu:
Why are not there any add ons to nvda that support captcha?

2019-03-16 15:41 غرينتش+02:00, Larry Wang <larry.wang.801@...>:
Hi everyone,

I am happy to relase version 0.3 of onine ocr addon.
Changes in this version include:
Fix issue about new installation.
Add detail documentation on how to get API key of Microsoft Azure OCR
Removed auto OCR since this feature is problematic and may confuse with
online engines. Auto OCR will be a seperate addon, when it is stable
enough.

Here is download link

https://github.com/larry801/online_ocr/releases/download/0.3/onlineOCR-0.3-dev.nvda-addon

Cheers,
Larry


        

      

    

Larry Wang
 

Hi everyone,

I am happy to relase version 0.4 of onine ocr addon.
Changes in this version include:

Fix installation error when config path contains non-ascii characters
Change gesture to avoid collison with golden cursor.

NVDA+Shift+R Recognize current navigator object with online OCR engine Then read result.If pressed twice, open a virtual result document.

NVDA+Alt+R Recognizes image in clipboard with online OCR engine. Then read result.If pressed twice, open a virtual result document.
Change default engine to Microsoft azure because it is able to detect text language automatically.
Here is the direct download link

https://github.com/larry801/online_ocr/releases/download/0.4/onlineOCR-0.4-dev.nvda-addon

Cheers,
Larry