C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: TeeseractOCR C#をC++/CLにて実装したい


(過去ログ 159 を表示中)

[トピック内 8 記事 (1 - 8 表示)]  << 0 >>

■91915 / inTopicNo.1)  TeeseractOCR C#をC++/CLにて実装したい
  
□投稿者/ びぎなー青ドンちゃん (1回)-(2019/08/09(Fri) 17:25:30)
びぎなー青ドンちゃん さんの Web サイト

分類:[.NET 全般] 


お世話になります。

環境:Windows 10 x64
   Visula Studio 2017
使用言語:C++/CLI C#
Teeseract OCR (Nugetで Teeseract.DLL 導入済み)

※参考サイト:https://qiita.com/nobi1234/items/c8d7b748c1aa31d771a1


C#で書かれた下記サンプルコードをC++/CLIにて実行したいのですが
下記エラーが出て前に進むことができません。

エラー内容:
    "Tesseract::Page ^" から "Tesseract::Page" への適切なユーザー定義変換が存在しません


以下C#サンプルコードならびに、C++/CLIのコードです。


//-------------------------
// C# サンプルコード
//-------------------------
static void Main(string[] args)
{
//言語ファイルの格納先
string langPath = @"C:\tessdata";

//言語(日本語なら"jpn")
string lngStr = "eng";

//画像ファイル
var img = new Bitmap(@"C:\Temp\test.bmp");

using (var tesseract = new Tesseract.TesseractEngine(langPath, lngStr))
{
// OCRの実行
Tesseract.Page page = tesseract.Process(img);

//表示
Console.WriteLine(page.GetText());
Console.ReadLine();
}
}




//-------------------------
// C++/CLI
//-------------------------

※using namespace Tesseract;

//言語ファイルの格納先
String^ langPath = "C:\\tessdata\\";

//言語(日本語なら"jpn")
String^ lngStr = "eng";

//画像ファイル
Bitmap^ img = gcnew Bitmap("C:\\Temp\test.bmp");

Tesseract::TesseractEngine^ api = gcnew Tesseract::TesseractEngine(langPath, lngStr);

Tesseract::PageSegMode pageSegMode = Tesseract::PageSegMode::Auto;

Tesseract::Page page = api->Process(img, pageSegMode);
^^^^^^
                ↑
               "Tesseract::Page ^" から "Tesseract::Page"
               への適切なユーザー定義変換が存在しません




C++/CLIでTesseract::TesseractEngineを実行したいのですがうまくいかず途方に暮れております。

※C#ではサンプルコードで動きは確認できております



勉強不足、また根本的にC++/CLIというよりはオブジェクト定義の理解不足であるとは思いますが
お力添えいただければ幸いです。何卒よろしくお願い申し上げます。








引用返信 編集キー/
■91916 / inTopicNo.2)  Re[1]: TeeseractOCR C#をC++/CLにて実装したい
□投稿者/ Hongliang (856回)-(2019/08/09(Fri) 17:29:31)
C++/CLIにおいて、
型 Hoge

型 Hoge^
は別物です。
Hoge^ 型のインスタンスを Hoge 型の変数には代入できません。
引用返信 編集キー/
■91918 / inTopicNo.3)  Re[2]: TeeseractOCR C#をC++/CLにて実装したい
□投稿者/ とっちゃん (615回)-(2019/08/10(Sat) 01:38:56)
Tesseract::Page^ page
になっていないのが原因ですね。

よくあるミスの一つなので、慣れるしかありません。

引用返信 編集キー/
■91921 / inTopicNo.4)  Re[3]: TeeseractOCR C#をC++/CLにて実装したい
□投稿者/ 774RR (724回)-(2019/08/10(Sat) 05:34:28)
\ が2つ必要なのに1つしかない場所があるので探してみるとよい

# C++/CLI で EXE 作るの? 非推奨パターンですぜ、オイラならやらない(選択肢として選ばない)

引用返信 編集キー/
■91935 / inTopicNo.5)  Re[2]: TeeseractOCR C#をC++/CLにて実装したい
□投稿者/ びぎなー青ドンちゃん (2回)-(2019/08/12(Mon) 10:43:58)
Hongliang 様

ご回答ありがとうございます。
休み明けに早速確認致します。

確認後にクローズ致します。


引用返信 編集キー/
■91936 / inTopicNo.6)  Re[3]: TeeseractOCR C#をC++/CLにて実装したい
□投稿者/ びぎなー青ドンちゃん (3回)-(2019/08/12(Mon) 10:47:16)
とっちゃん 様

ご教示ありがとうございます。
休み明けに早速確認致します。

早々にご回答頂いているにもかかわらず
確認できず申し訳ございません。

確認後にクローズ致します。

解決済み
引用返信 編集キー/
■91937 / inTopicNo.7)  Re[4]: TeeseractOCR C#をC++/CLにて実装したい
□投稿者/ びぎなー青ドンちゃん (4回)-(2019/08/12(Mon) 11:02:15)
774RR 様

画像パス誤記のご指摘ありがとうございます。

>
> # C++/CLI で EXE 作るの?

説明不足申し訳ございません。
C++/CLI でDLLを作成しようとしております。
(vb.net exeから上記DLLを読み込む)

皆さまからお教え頂きました件を含めて
動作確認致します。

お忙しい中ご回答頂きありがとうございました。





解決済み
引用返信 編集キー/
■92035 / inTopicNo.8)  Re[2]: TeeseractOCR C#をC++/CLにて実装したい
□投稿者/ びぎなー青ドンちゃん (5回)-(2019/08/19(Mon) 15:14:54)
Hongliang 様 とっちゃん 様 774RR 様

> 型 Hoge
> と
> 型 Hoge^
> は別物です。

Tesseract::Page page



Tesseract::Page^ page に変更することによりエラーが無くなりました。


次のステップに進めることができました。
お忙しい中ご教授頂き誠にありがとうございました。




解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -