CAD 台形補正2 - Ver.0.88a 2025/09/21
■ 概要
CAD 上の画像に閉じたポリラインで台形を描いておき、画像と一緒に選択することで、
台形補正の画像を作成します。
BricsCAD, IJCAD, ZWCAD, ARES で動くと思います。
AutoCAD でも動く可能性はありますが、確認はしておりません。
■ 短い動画:https://youtu.be/u4dJSBkScow
■ 使い方
「画像上に台形ポリラインを描く」のチェックボックスをオフ。
「バイキュービックを使う」のチェックボックスをオフ。
「画面キャプチャを使う」のチェックボックスをオフにしておきます。
※ 「画面キャプチャを使う」のチェックボックスがオフのときは、画像ではなく OLE フレームで
あっても、台形補正できます。
予め、画像の上に左上から順に右回りの4点を指示し、C オプションで閉じたポリラインを
描画しておきます。
※「画面キャプチャを使う」のチェックボックスがオフのときは、画像の各頂点に近いポリ
ラインの頂点が採用されます。
「画像と台形ポリラインを選択」ボタンをクリックして、画像と台形ポリラインを一緒に
選択し、[Enter] を押します。
しばらくすると、フォームの右側に台形補正後の画像が表示されます。
台形補正後の画像は、一時ファイルとして、Daikei2.exe フォルダの TEMP フォルダに、
< 日付+時刻 > 名の PNG が作成されます。
ファイルを確認するには、ファイル名の右側の [ > ] ボタンをクリックすると、
エクスプローラーが開き、ファイルがアクティブになります。
CAD にアタッチするには、エクスプローラーからファイルをドラッグ&ドロップするか、
[一時画像をアタッチ」ボタンをクリックします。
図面上に画像を残す場合は、「名前を付けて保存」ボタンをクリックし、ファイル名を変更
して保存します。
デフォルトのファイル名は、元画像と同じファイル名 + "_HOM"+ 元の拡張子になります。
ファイルを確認するには、ファイル名の右側の [ > ] ボタンをクリックすると、
エクスプローラーが開き、ファイルがアクティブになります。
CAD にアタッチするには、エクスプローラーからファイルをドラッグ&ドロップするか、
[保存画像をアタッチ」ボタンをクリックします。
■ チェックボックス
・「画像上に台形ポリラインを描く」のチェックボックス
オンにすると、左側の画像上に台形ポリラインを赤色で描画します。
結果、右側の台形補正後の画像にも描画されます。
・「バイキュービックを使う」のチェックボックス
オンにすると、時間はかかりますが、画像がなめらかになります。
・「画面キャプチャを使う」のチェックボックス
オンにすると、元の画像ファイルではなく、画面キャップチャの画像から台形補正を
行います。
画像が無くても(OLE フレームであっても)台形補正でき、ターゲットの CAD によっては
手軽で快適ですが、CAD、画面の解像度によって、実用にならない場合があります。
画面キャプチャのタイミングが合わないときは、
システム変数 VTENABLE(アニメーション ズーム)の値を 0 に変更してみてください。
「名前を付けて保存」の保存先の規定値は、Daikei2.exe フォルダ内の IMAGE フォルダです。
このフォルダ内のファイルは、アタッチに使用されることを想定して、自動で削除されません。
■ 画像のファイル拡張子
読み込み、保存とも PNG, BMP, JPG/JPEG, TIF/TIFF に対応しています。
※「画面キャプチャを使う」のチェックボックスがオンのときは、画像ファイルを読み
込まないため、拡張子は関係ありません。画像ではなく OLE フレームであっても、台形補正できます。
■ 一時ファイル
Daikei2.exe フォルダの TEMP フォルダ内の画像ファイルは、一時ファイルです。
不要になったときは適当に削除してください。
「終了時、一時画像ファイルを削除」のチェックボックスがオンのときは、終了時に
自動で削除されます。
※一時画像ファイルを図面上にアタッチしているときは、次回の読み込み時に参照先が
見つからなくなります。
図面上に画像を残す場合は、「名前を付けて保存」したファイルをアタッチして下さい。
■ 台形補正について
単に台形部分を四角形に引き延ばしているだけなので、縦横比、寸法は正確ではありません。
プログラム上は、上下、左右の辺の長さの平均値を長辺、短辺の長さとしています。
試しに 2 点透視っぽい図形を台形補正してみると、下図のようになりました。
分かりにくいですが、画像の縦横を実寸に合わせると、ほぼ使えるレベルだと思います。
「バイキュービックを使う」のチェックボックスがオフのときは、最近傍補間(ニアレストネイバー)で変換しているため、
画像はなめらかではありません。極端な例ですが、下の画像のようになります。
「バイキュービックを使う」のチェックボックスがオンのときは、ある程度なめらかになるようです。
■ CAD、画面解像度の関係
こちらの環境は、高 DPI (4K) 環境です。
左が ARES で画面キャプチャで台形補正した画像、右が画像ファイルから台形補正した画像です。
高 DPI 環境でなければ、こうなるのかも知れない・・・のサンプルで、キャプチャ画像からの台形補正は、実用不可なのかも知れません。
CAD、画面の解像度が低い場合は、「画面キャプチャを使う」をオフにして使って下さい。
■ 傾き補正(水平基準)
・参照2点による傾き補正(トレース用)
微妙に回転された(傾いている)画像の回転角度を補正します。
やっていることは、ROTATE コマンドの R(参照) と同じです。
画像の上に水平にしたい線上に左から右方向に線分を作成します。
「参照2点による傾き補正」ボタンをクリックし、画像と回転したい他の図形、作成
しておいた線分を選択し、[Enter] を押します。
作成した線分の左側の端点(回転の基点になります)と右側の線上点、または端点を
指示します。
・参照2点による傾き補正画像を作成(ラスべく変換用)
微妙に傾いたラスべく変換用の画像を、基準2点の指示で回転した画像を作成します
「参照2点による傾き補正画像を作成」ボタンをクリックして、画像を選択し [Enter]。
参照角度として水平にしたい任意の2点を指示するか、回転角度を入力します。
画像自体を単純に回転したいときは、角度の±を反転した数値を入力して下さい。
しばらくすると、フォームの右側に回転された画像が表示されます。
「余白=白色」のチェックボックスがオンのときは、余白(対応する画像が無いところ)が
白色に、オフのときは黒色になります。
「バイキュービックを使う」のチェックボックスがオンのときは、時間はかかりますが、
画像がなめらかになります。
「名前を付けて保存」ボタンで、ファイル名を変更して保存します。
デフォルトのファイル名は、元画像と同じファイル名 + "_ROT" + 元の拡張子になります。
ファイルを確認するには、ファイル名の右側の [ > ] ボタンをクリックすると、
エクスプローラーが開き、ファイルがアクティブになります。
「保存画像をアタッチ」ボタンで、CAD 上にアタッチできます。
■ 使用ライブラリ
台形補正については、https://mam-mam.net/ 様のサンプルコードを使用しています。
「射影変換(ホモグラフィ変換)で画像の台形や平行四辺形領域を長方形変換」
https://mam-mam.net/delphi/vcl_homography.html
「DelphiでTBitmap画像を任意角度に回転|バイキュービック補間付きの実装コード公開」
https://mam-mam.net/delphi/vcl_rotate_image.html
ソースコードの公開に感謝いたします。
■ 著作権、制限事項等
本ツールの著作権は、作者 f.izawa が所有し、これを主張します。
本ツール、同梱の LISP を使用したことによる事故、損害等の一切について、作者はその責を負いません。
使用される方の責任において、お使いください。
■ ダウンロード
Ver.0.88a 2025/09/21 キャプチャ時、「名前を付けて保存」できないのを対策。
http://www.izawa-web.com/zip/Daikei2_20250921.zip
■ 作者連絡先
e-mail : f.izawa@dream.com
URL : http://www.izawa-web.com/
■ 履歴
2025/09/13 Ver.0.80 初版作成
2025/09/13a 同梱 LISP のみの変更(回転した画像のサイズ変更に対応)
2025/09/13b Ver.0.81 ポリラインの頂点数の確認を追加、イメージが選択されているかの確認を削除
2025/09/16 Ver.0.82 ARES にてズーム処理ができないのを対策
2025/09/16a Ver.0.82a フォームサイズが可変になっていたのを手直し。変換中のカウントアップ表示を追加。
2025/09/17 Ver.0.83 バイキュービックのチェックボックスを追加。
2025/09/17a Ver.0.84 画像サイズが大きいとき、台形補正が失敗するのを修正
2025/09/18 Ver.0.85 画像ファイルから台形補正するモードを追加、画面キャプチャを使うのチェックボックスを追加
2025/09/18a Ver.0.85a ARES で画面キャプチャのタイミングが合わないのを対策
2025/09/19 Ver.0.86 変換元の画像ファイル形式に TIF/TIFF を追加
2025/09/20 Ver.0.87 角度補正のタブ(ページ)を追加
2025/09/20 Ver.0.88 角度補正を微妙な傾き補正用に変更
2025/09/21 Ver.0.88a キャプチャ時、「名前を付けて保存」できないのを対策
■ CADOCR との組み合わせ
画像ファイルからの台形補正後に、CADOCR を使ってみました。
紫色の文字が OCR 文字です。完璧ではありませんが、たたき台としては使えそうです。