Perspec 1.0

2026/08/05 0:40

Perspec 1.0

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

Perspec 1.0 は、2026 年 7 月 29 日にリリースされたデスクトップアプリケーションであり、Adobe Scan、vFlat、SwiftScan、Dropbox またはネイティブスキャナーなどのモバイル代替手段よりも高い品質で文書や領収書の画像の視差を補正し、精密な編集を行うことを目的としています。より小さなグレースケール PNG ファイルを生成するだけでなく、Python/Haskell の抽象化オーバーヘッドを回避するために純粋な C ライブラリ(FlatCV)を採用することで、Windows、macOS、Linux 上で高いパフォーマンスを実現しています。標準的なモバイルアプリが直線検出で苦戦するのに対し、Perspec はフォーンストナー検出器によるサブピクセル精度を含む自動コーナー検出を活用し、皺のある面や曲面、不平整な表面を効果的に処理します。画像処理パイプラインには、256×256 ピクセルへのダウンスケール、高さマップ用のソベルフィルタリング、流域セグメンテーション、ぼかしによる減算によるシャドウ除去が適用され、その後にオースの方法(Otsu's Method)を用いて二値化が行われます。新しく追加された「Save BW Smooth」オプションは、二重閾値を使用してテキストのエッジをさらに精査します。今後のアップデートでは、A4 または US Letter 形式への出力サイズ標準化、領収書の QR コード検出機能、そして「Select Files」ビュー、ドラッグアンドドロップ対応、EXIF 回転処理といった機能を追加する予定です。現時点では、itch.io か Gumroad でライセンスキーが必要で、アップグレードバナーを除去するために使用されます。結局のところ、このソフトウェアはユーザーがモバイルデバイスに依存せず、コンピューター上で優れた画像品質を達成することを可能にします。

本文

Perspec 1.0 リリース記念:文書スキャンアプリの誕生と技術的アプローチ

2026 年 7 月 29 日、視差(歪み)補正のためのデスクトップアプリケーション Perspec の 1.0 版リリースを発表いたしました。 このプロジェクトは当初 9 年前から構想しており、ようやく思い描いたアプリが完成しました。

イニシャルな動機:なぜスキャンアプリを作るのか?

スマートフォン vs デスクトップ

Adobe Scan や vFlat などのスマートフォン向けスキャンアプリは一般的ですが、私はスマートフォンの作業を好ましくないと考えます

  • 大きな画面: コンピュータ上で画像を表示・編集できるため、より高速かつ正確な整地・整理が可能です。
  • キーボードとマウス: マニュアル操作による精密な編集が容易です。

既存アプリの欠点

多くのモバイルアプリは、「ユーザーに優しい」という名目で不適切な技術的決断を強いることがあります。

  • 画像フォーマットの問題:
    • 均一な色のある文書スキャンでは、圧縮アーティファクトがない PNG を使用すべきですが、多くのアプリは「JPEG が一般的」という理由で画質低下を引き起こす グレースケール JPEG を提供します。
    • JPG から PNG への変換は一度圧縮すると不可能です。
アプリ結果形式ファイルサイズ概算備考
PerspecPNG〜110 kB劣化なし
Scanner ProJPEG〜190 kB圧縮アーティファクトあり
iOSJPEG〜300 kB圧縮アーティファクトあり

「おかしな検出プレビュー」の問題

アプリはライブオーバーレイで書類の位置を示しますが、これは実質的に役に立ちません。

  • プレビューでの検出=最終画像での検出ではありません。
  • 解像度、照明条件、コントラストの違いにより結果が大きく変動します。

より優れた文書検出アルゴリズムの必要性

既存アプリ(エッジ検出+Hough 変換)では、しわくちゃな領収書や曲がったページの端部で角点が大きくズレてしまいます。

  • Perspec のアプローチ: 直線ではなく**「輪郭から角点を導出」**します。
    • FlatCV を使用した独自のコンピュータビジョン技術を採用。

1.0 への長い道:技術スタックの進化

学生時代より開発を始めた Perspec は、Photoshop や GIMP などの汎用ツールでは作業効率が低いため、特定のタスクに特化したアプリを追求しました。

開発言語とライブラリの選定歷程

  1. Python & scikit-image: 初期の CLI アプリ「Perspectra」で使用しましたが、自動化には不十分で手動修正用の GUI の必要性を感じました。
  2. Haskell + ImageMagick: Haskell 学習のため試行しましたが、外部プロセス呼び出しはプラットフォーム間のリンク設定とパフォーマンス面で課題がありました。
  3. OpenCV: Haskell バインディングは難航し、C++ コンテキストの経験不足もあり敬遠されました。
  4. Hip (Haskell Image Processing): ネイティブライブラリですが、Otsu 法など必要な機能が不足し、抽象化が複雑化するデメリットがありました。
  5. FlatCV (C ライブラリ + Haskell FFI): 最終的に決定しました。C 言語のシンプルさと Haskell の機能性を融合させ、SIMD や GPU 使用を視野に入れた高性能な画像処理ライブラリを開発しました。
  • バージョン 0.3.0: 基本的な画像処理とアダプティブ二値化、角点検出を実装。
  • バージョン 1.0: FlatCV を用いた自動角点検出機能の完全実成によりリリース可能に。

エッジ検出 vs コーナー検出:Perspec の独自技術

一般的なスキャンアプリは「画像縮小→エッジ検出→Hough 変換(直線検出)→交差点から四辺形構築」というパイプラインを使用します。しかし、これは平らな紙にしか適応しません。 しわくちゃな領収書や折れたページでは、直線で端を近似すること自体が誤りを招きます。

FlatCV による角点検出パイプライン

Perspec は**「文書の輪郭から角点を導出」**します。

  1. 画像縮小: グレースケール化し 256×256 に縮小(高速化)。
  2. ノイズ除去: ブラーリングでテクスチャと細かいノイズを除去。
  3. 高さにマッピング: Sobel フィルターでエッジを検出し、高さを山脈の稜線として表現。
  4. ウォーターシェード分割:
    • 画像中心(文書)をシードし浸水させる。
    • 境界(背景)をシードし浸水させる。
    • 結果:文書の二値マスクを生成。
  5. マスク平滑化: 二値closing で境界を滑らかに。
  6. Förstner コーナーデテクタ: ハリス検出器とは異なり、サブピクセル精度の角点位置を返します。
  7. ソートと抽出: 最大角度を持つ 4 つの角点を保持。
  8. 解像度復元: 角点座標を元の解像度にスケーリングアップ。
  • メリット: 曲線な文書境界も追跡可能。自動検出が不正確な場合でも、選択ポリゴンをドラッグして簡単に修正可能(自動+手動の両方を活用)。

二値化アルゴリズム:黒白変換の最適化

書類や領収書の場合、視差補正と同じく**「クリアな黒白画像への 변환」**が重要です。

課題:不均一な照明

Otsu の法則(ヒストグラムに基づく単一閾値)は均等照明には適していますが、影や明度勾配のある写真では機能しません。

FlatCV のスマートな黒白変換フロー

複雑な局所適応アルゴリズムに頼らず、以下の手順で高速かつ高精度に処理します。

  1. グレースケール変換。
  2. 重くぼかす: 画像の約 10% の半径でぼかし処理(照明の明度勾配と影のみを残す)。
  3. 差分を取る: ぼかしたコピーから元の画像を引く(低周波数の影を除去、高周波数の文字を残す)。
  4. Otsu 閾値適用: 均一照明された状態に仮定して二値化。

エクスポートオプション

  • Save BW: 真の 1 ビット黒白画像(各ピクセルは完全な黒または白)。
  • Save BW Smooth (推奨): 2 つの閾値を使用し、中間領域をスケーリングされたグレースケールで保持。
    • 効果: アンチアリアシングにより文字が鋸歯状にならず、ファイルサイズはほぼ維持されます。書類、領収書、ホワイトボードに最適です。

1.0 リリースの主な新機能

自動角点検出に加え、以下の機能が強化・実装されました。

  • Windows への対応: macOS/Linux の他、全ての主要デスクトップ OS で動作。
  • インタラクション改善: 選択ポリゴンの端(角点だけでなく)をドラッグ可能に。グリッド線による調整サポート。
  • ファイル操作: 新しい「Select Files」ビューと、画像のドロップ&ドロップサポートの追加。
  • 出力品質向上: 「Save BW Smooth」オプションの実装により、印刷物への最適化。
  • メタデータ処理: PNG の EXIF 回転データの自動処理対応。
  • UI/UX アップデート: Brillo ライブラリの最新バージョン採用によるデザイン改善、ホバー効果、デフォルトフォントの適用。

インストール方法

リリースページから macOS、Windows、Linux のプリビルトバイナリをダウンロード可能です。

Homebrew (macOS) でのインストール例:

brew install --cask ad-si/tap/perspec
  • ライセンス購入について: アップグレードバナーや「ライセンスのご購入ください」というメッセージを消去するには、itch.io または Gumroad でライセンスを購入する必要があります。Haskell アプリケーション開発への支援としてご検討ください。

コマンドラインでのバッチ処理: インストール後は CLI から以下のように実行できます。

perspec fix photos/*.jpeg

または、画像をアプリウィンドウにドロップすることも可能です。

次のステップと今後の計画

1.0 は大きなマイルストーンですが、将来のリリースで以下を実装予定しています。

  • 固定出力サイズ: 出力を A4 または US Letter に強制し、スキャンされた文書の比例とサイズを標準化。
  • QR コード検出: 領収書の自動化フローとして、QR コードからメタデータを抽出・追加する機能を実装(Marcel Robitaille氏の投稿に基づく)。

問題に遭遇した際や改善のアイデアがある場合は、Issue をお送りいただくか、@AdrianSieber へご連絡ください。ご意見は非常に歓迎いたします!

同じ日のほかのニュース

一覧に戻る →

2026/08/05 7:01

インターポールが警告、アフリカのサイバー犯罪の半分以上を AI が支えデジタル詐欺急増

## 日本語訳: 以下に、元の草案から欠落していた特定の地域的なニュアンスおよび文脈源をより適切に統合しつつ、明瞭さを維持するためにもたらされた改善されたバージョンが示されます。 ## サマリー(改善版) INTERPOL の 2026 アフリカサイバー脅威評価によると、人工知能はアフリカ全体でサイバー犯罪における支配的な力となり、報告された事例の半分以上を原動力とし、2024 年の 1,9200 万ドルから 2025 年には 4,8400 万ドルへと金融損失を増大させています。状況は地域によって多様です:西アフリカおよび南部アフリカは主要な詐欺センターを擁しており(調査対象国の 72% で特定)、中央アフリカではビジネスメールへの侵害やロマンス詐欺の発生率が高く、東アフリカではモバイルマネー詐欺、重要インフラに対するランサムウェア攻撃、合成アイデンティティ犯罪に苦しんでいます。特定のセックス extortion の急増が明らかで、TrendAI がディープフェイクに関連する約 60 万件の事例を検出しています。犯罪者はこれらのツールをソーシャルメディアやモバイルマネーおよびデジタル銀行のようなプラットフォームと組み合わせ、ローンの目的や SIM カード登録のために合成アイデンティティを伴う複雑なスキームを実行するために使用します。しかし、依然として重大な脆弱性が存在しており、特に南部アフリカのように高度なデジタル接続を有する国々において、銀行、通信事業者および法執行機関間の弱い連携は、犯罪者が盗まれた資金を瞬時に国境を超えて移動させることを可能にしています。これらの課題にもかかわらず、対応は増えつつあります;2025 年だけでも、セネガルの新しいオンライン報告プラットフォームを含むサイバー犯罪法の更新を行ったアフリカ諸国は 17 カ国あり、Serengeti 2.0 など共同作戦を促進し、それらは 1,500 件以上の逮捕と 1 億ドル以上の資金の回復をもたらしました。将来のセキュリティは、これらの進化する AI 駆動型の脅威に対処するために、持続的な国際協力および強化された地域準備に依存します。

2026/08/05 1:36

Mistral の Shieldstral:マルチモーダル検閲向けに公開された 3B オープンウェイトモデル

## 日本語訳: Shieldstral は、NVIDIA との Open Secure AI Alliance の初メンバーとして Apache 2.0 ライセンスの下でリリースされた、30 億パラメータを持つオープンウェイトのマルチモーダル安全性分類器です。このモデルは、テキストと画像の安全性評価を単一の適応型インターフェースに統合し、1 トークンから定量化された連続的な安全性スコアを返します。Shieldstral は、コンテンツモデレーションを文脈・厳格度に適応する質問応答タスクとして位置付け、推論時に再トレーニングなしで平易な言語でのポリシーを受け入れる 3 つのコンポーネント(<Instruct>:文脈/厳格度、<Query>:はい/いいえの安全性に関する質問、<Document>:評価対象のテキストまたは画像)を採用しています。Shieldstral は、プロンプト分類、回答モデレーション、拒否検出、毒性検出を単一の適応可能な問題に統合します。性能については、テキスト安全性、拒否検出、ポリシー適応性、マルチモーダルベンチマークにおいて、最大 7 倍のサイズを持つオープンガードモデルと同等かそれ以上の性能を示し、1 つの 16GB の NVIDIA GPU で効率的に動作します。Forge 上でのエンドツーエンドトレーニングでは、多様なラベル形式を持つ現実および合成データを組み合わせたヘテロ지니어ズなデータを使用し、以下の 4 つの主要な課題に取り組んでいます:(1)ヘテロ지니어ズなデータタクソノミーの統合、(2)暗記ではなく判別の学習、(3)画像に基づく安全性の根拠付け、(4)LoRA と SLERP メージを介した補完的なチェックポイントの組み合わせです。データ処理では、ソースごとの厳格度調整(ジャイルブレイク用は厳しく、回答品質用は緩い)を行い、定量化された意思決定境界を学習し、一般的な画像データセットを負例として使用するとともに、視覚・言語再ランク付けにより誤ラベル付けされたペアをフィルタリングしました。今後の計画としては、多言語対応の拡大、長文書に対する堅牢性の向上、およびマルチモーダル安全性機能の幅広化が含まれます。

2026/08/05 0:16

Show HN: 肌の色調を多様化する単純なアルゴリズムと色彩空間

## Japanese Translation: このプロジェクトは、デジタルアートおよびキャラクター作成向けに包摂的なツールを促進することを目的とした、簡略化された RGB ベースの色空間を導入します。これは、現在のシステム(絵文字:5 色、メイクアップパレット:約 50 色など)の限界に対処するものです。本モデルは、生物学的要因(メラニンや血流など)、個々のバイアス、健康状態(例:黄疸など)、および異なるディスプレイ環境によって複雑化している人間の肌トンの莫大な複雑性に対する科学的権威を主張するのではなく、実用的で「十分良好な」エンジニアリングの起点を優先します。手法は、手動での RGB データラベリング、主成分分析(PCA)によるデータセットの変換、Desmos 3D、SymPy、matplotlib、scikit-learn などのツールを用いた球面式のフィッティングを含みます。得られたシステムは、PCA 軸から導かれる 3 つの独立した値を利用し、UI を介して調整されます。ここで、可変的な球半径パラメータは色の変化を制御します;具体的には、この半径を小さくすると、すべての肌トーン(深肤色、白人、冷色調、温色調)において一様に変化が減少し、特定のグループを不均衡に排除することはありません。原点点はニュートラルな曖昧なトーンを表し、マッピングバイアスを特定するために有用です。今後の作業では、専門家ラベラーを用いてモデルを微調整し、黄疸や白斑症などの状態に対する簡略化された表現を取り入れる予定です。本アプローチは科学的でないことを認める一方で、エンジニアリング用途においては依然として非常に機能性を備えていることを認識しています。