さらに追記
image-rendering: -webkit-optimize-contrast;
の亜種ですが、対象要素を3Dレンダリングさせることで画像縮小アルゴリズムをさらに変更させるテクニックがあります。
css
1 backface-visibility: hidden;
2 transform: translateZ(1px);
(上記2つのうちどちらかの指定でOKですが念のため)
モダンブラウザでは要素を3D空間にレンダリングして立体表示することができます。
(サンプル)
立体表示になっている面に画像をレンダリングする際は、処理速度を考慮してさらに計算量の少ない方法で拡大・縮小するようになっているようです。chrome/edgeだとかなり荒い縮小になりますが図形や文字は逆にボケにくくなります。(細線は省略されてしまったりしますが)
参考にしている他社(?)サービスの実装も上記のようなテクニックを使っている可能性があります。
ちなみに他社サービス実装の次点予想は「サムネイルと原寸表示時で異なる画像ファイルを使用している」です。
ちなみにfirefoxおよびsafariでの表示は無指定時と全く同じでした。
またsafariではimage-rendering: -webkit-optimize-contrast;
がpixelatedとほとんど同じような縮小になるので使用しない方が良いかもしれません。
(RetinaのMacを持っていないのでRetinaでは試していません)
追記
誠に勝手ながら、画像のURLが分かってしまったので私の方で同画像の表示テストをいろいろとさせていただきました。
(問題があるのであればurlが載っている画像は削除してください。私もこの回答が終わったらPCから画像を削除します)
edge, chrome, firefoxでそれぞれ1920x1080の解像度にフィットするよう表示させたところ、edgeとchromeでは変化がありませんでしたがfirefoxでは明らかに図面がシャープに見えました。
以上のことから、ブラウザがデフォルトで使っている拡大縮小アルゴリズムの違いだと推定されます。
edgeとchromeはエンジンが同じ(chromium)なので使用しているアルゴリズムは一緒~~(ニアレストネイバ法)~~(追記:誤った記載だったので削除しました)だと推定されます。firefoxのアルゴリズムは以下の記事によるとバイリニア法のようです。
https://developer.mozilla.org/ja/docs/Web/CSS/image-rendering
画像のレンダリングアルゴリズムはCSSで変更できます。プロパティ名は image-rendering
です。
pixelate
にすると明らかにギザギザになってかえってひどくなりますが、下記の記事の様に-webkit-optimize-contrast
を指定するとかなり改善して見えるようになりました。(
https://sho-log.com/chrome-image-blurred/
それでのfirefoxの方が若干見やすい感はありますが、文字はだいぶん視認性が良くなりました。
ただし、このテストは1920x1080で「拡大縮小レイアウト」が100%の状態で行っています。
高DPI設定(「拡大縮小レイアウト」が125%や150%になる、ノートPCによくある設定)の場合、おそらくブラウザでのレンダリングが
「縦1080pxに合うように縮小→拡大縮小レイアウトで設定した倍率に拡大」という手順を踏んでいる可能性があります。その場合はアプリやOS側の改善待ちになるのかもしれません。(他の方の回答でも言及されていますが)
以前の回答
確かに内蔵GPUに原因がある可能性は否定できないところだと思います。
解決につながるかどうかは未知ですが、設定を変更して改善する可能性がある点としては、
・ブラウザの「ハードウェアアクセラレーション」をoffにする
・ブラウザのズーム倍率が100%出ない場合は、100%にする。
・windowsの「ディスプレイの設定」で「拡大縮小レイアウト」が100%以外の場合は100%にする
設定以外での改善策で思いつくものは、
・chromeが最新でない場合は、アップデートする(現状では91が最新です)
・Webアプリ側の画像をもっと高解像度のものに差し替える。表示解像度の2倍以上が目安です。