「フィルタ」を含む日記 RSS

はてなキーワード: フィルタとは

2026-01-16

anond:20260116002030

写真のぼかしフィルタはconvolutional=畳み込みではあるが生成でもAIでもないから違うな

anond:20260116000555

いや強いAIは生まれてない。現在の水準のAI昔ながらのデジタル技術に延長線上にあるのは事実だ。ただの行列演算の畳み込みに過ぎない。写真のぼかしフィルタは重み行列固定の単純生成AIだ。

2026-01-04

エロを氾濫も規制もできるAI

たとえばAIを使えば誰でもAVに出演してる風にできる

たとえばAIを使えばすべてのメディア猥褻制限フィルタをかけられる

 

俺は多くの国で規制の方に行くんじゃないかと思うんだよね

2026-01-01

スパムとの戦いで振り返る、2025年増田月間 100+ users 記事数の推移 (追記2)

増田年間 100+ users 記事数の推移(anond:20260101090052)の記事で、2025年の減少がスパムの影響を受けていたのではとの指摘があったので、記録として残しておきたい。(追記) ブコメで指摘があった非公開ファーストブクマbotも反映させた。(追記2) 用語解説を拡充した。

100+ users備考
1月llllllllllllllllllllllllllll 285非公開ファーストブクマbotが稼働し始める
2月lllllllllllllllllllllll 233
3月lllllllllllllllllllll 215
4月llllllllllllllllllllllll 240
5月llllllllllllllllll 180英文スパムが増える
6月llllllllllllll 145
7月llllllllllllllll 166英文スパム対策CSS公開
8月lllllllllllllllllllll 212はてなによる英文スパム対策, b:id:dorawii自動セルクマを始める
9月lllllllllllllllllllll 210b:id:pico-banana-appブクマし始める
10月llllllllllllllllllllll 225魚拓増田が増える
11月lllllllllllllll 152あおやまちゃんが増える
12月llllllllllllllll 163NGフィルタ公開

5-7月にかけての減少は主に英文スパム11-12月にかけての減少は主に特定個人増田の影響を受けていたのではないかと思う。

(4月までにもスパムの報告はある)

用語解説

非公開ファーストブクマbot
「ある程度の長さの増田を書くと 無差別に非公開1userブクマしてきては翌日にはブクマ解除する(anond:20250220084238)」というbot。当初は動機が謎だったが(anond:20250210231425)、ファーストブクマランキング(anond:20250105135324)を破壊する目的でやっていることが、本人を名乗る増田の口から告白された(anond:20250220170032)。
英文スパム
英語スパムとも。ただしスペイン語日本語などでも投稿される。航空会社カスタマーサービス、5ドルもらえるキャンペーンソーシャルメディアフォロワー獲得、海賊版無料映画などで客を釣る。増田過去投稿ニュースサイト文章コピペした上で有害リンクのみ付与するパターンも。いずれも最終的には詐欺ウィルス目的だと思われる。最盛期はほぼ毎秒投稿され、増田の新着記事ブックマーク一覧も含めてほぼこれで埋め尽くされた。はてな運営にあまり放置されるので増田閉鎖説もささやかれたほど。現在対策のおかげでかなり沈静化しているが、根絶したわけではない。
英文スパム対策CSS
英文スパムがあまりに酷かったので作られた。当初は頻出英単語を含む記事を弾くだけだったが、スパム側の変化に合わせて有害URLリスト化するようになった。現在更新され続けている。
はてなによる英文スパム対策
運営ブログなどで宣言されたわけではないが、8月英文スパムは激減した。ユーザー観測できる具体的な対策内容としては、基礎的な英単語さえも本文に書けなくなるなどの(anond:20250924215205)、かなりナイーブ措置も含まれている。
dorawii
増田常駐ユーザーで非常に投稿量が多い。律儀に署名を付けることが多いので、目立ついっぽうで比較対策やすい。自作スクリプト自動セルクマするようになって、時間帯によってはブックマークすべて(1+ user)の一覧に多数出現する。
pico-banana-app
🤣の顔文字アイコンでおなじみのAIブックマークbot一番星はてのちゃんなどとは異なり、自認は人間技術系の記事全般増田を主戦場としており、スパム記事も含めてなんにでもブクマするため、ファーストブクマブックマークすべて(1+ user)の一覧を汚染やすい。また、他のブクマカに乗っかって新着(3+ users)入りを後押しすることも多い。
魚拓増田
通称は安定しないが、れめくん、Boushi_inst、電気通信大学たいていなど、特徴的なキーワードと共に、たびたび魚拓(megalodon.jp)のURL投稿する増田。非公開セルクマによってブックマークすべて(1+ user)の一覧に多数出現するが、数分から数十分の速さで元記事ブックマークも削除してしまうために、長期的な痕跡は残りにくい。年末にしばらく増田から姿を消していたが、年が明けて活動を再開したようだ。
あおやまちゃん
ボスMNK、OMNKちゃんずなど、特徴的なキーワードと共に、顔文字いっぱいの電波日記投稿し続ける増田セルクマしているわけではなさそうで、記事投稿数の割には、ブックマークの一覧に登場する頻度はひかえめ。魚拓増田ほどの速さではないが、数日経つと記事は削除してしまうようだ。
NGフィルタ
ブックマークすべて(1+ user)の一覧をチェックしているユーザーにとって、特定個人増田の 1 user ブックマークが増えすぎたことに耐えられなくなって作られた。現在更新され続けている。

2025-12-22

[] ジェットバスタオル

ジェットバスタオルほしい。

温風で手の水滴を吹き飛ばすハンドドライヤーみたく、お風呂出た後の体中の水滴を吹き飛ばすジェットバスタオルが。

風呂のドアの周囲に設置して、お風呂ドア潜り抜けたらもう体が乾いてるの。湯冷めもしなさそう。

バスタオル洗濯した排水による下水への負荷を減らす」とか、「洗濯機のフィルタ捕獲しきれない微細な繊維による環境への負荷を減らす」とか、エコっぽいSDGsっぽいアピールで普及を図るとかどうだろ。

2025-12-18

(令和最新版) ドラム洗濯乾燥機加湿器選びの結論書くから見ろ

ドラム洗濯乾燥機の選び方

まずお前が本当にドラム洗濯機が必要人間なのかを見極める必要がある。

なぜならドラム式は総じて縦型より寿命が短く、洗濯時間がかかり、メンテ必要で、なにより高額だからだ。

以下のすべてを満たす人しかドラム洗濯機を買ってはいけない

  • 洗濯物を干すのも取り出すのもどうしても嫌いだ・面倒だ・無くしたい

例外的に、下記の条件に当てはまる場合は慎重に検討して買ってもよい

上記を満たした人は、機種選びに進もう。

機種選び(結論)
機種選び(選考基準)

以下を必須で満たす機種とした。

購入・使用における注意

なんか長くなったので加湿器はまた今度書きます。読んでくれてありがとう

異論反論あればよろしくねがいします。

2025-12-09

はてなNGフィルタまとめ

はてなブックマーク増田機能する、NGワードを元に記事非表示にする方法をまとめました。

現在機能する方法という観点で調べてみましたが、有力な抜け漏れがあったら教えてください。

はてなフィルター

https://hatenafilter.com/

外部サイト型のはてなブックマーク

はてなNG代替品作った (はてなフィルタ)

anond:20180609124213

ChromeFirefox拡張で、はてなブックマーク有効デフォルト非表示になるサイト多数あり。AndroidならFirefox版が動くかも。

はてブ記事を、キーワードURLミュートする Chrome 拡張を作った (はてなミュート)

anond:20230305200055

はてブ記事キーワードURLミュートする拡張Firefox版も作った

anond:20230311142828

ChromeFirefox拡張で、はてなブックマーク有効AndroidならFirefox版が動くかも。

[はてブ]uBlock Origin特定エントリーを隠す方法メモ

anond:20180523215832

増田でuBlock Originを使って特定単語を含むエントリーを隠す方法メモ

anond:20180523222112

広告ブロック uBlock Origin を使っている場合活用できる。同 Lite 版でも「カスタムフィルター機能を使って対応できる。はてなブックマークだけでなく増田にも有効。面倒だろうけどAndroidならFirefox版が動くかも。

はてなブックマーク増田一覧向けNGフィルタ

anond:20251209224022

Tampermonkeyなどのユーザースクリプト適用する拡張と共に、またはブックマークレットとして使う。はてなブックマーク増田一覧にだけ有効スマホ場合アプリでは動かないが、面倒だけどブラウザでは動くキーワードノイズとなりやすユーザーを中心に常時メンテナンス中。

はてな匿名ダイアリー特定ワード投稿非表示

anond:20251208175027

Tampermonkeyなどのユーザースクリプト適用する拡張と共に使う。増田にだけ有効。面倒だけどスマホでも動く

[増田しぐさ] 増田CSSを紹介する記事(英文スパム対策付き)

anond:20250701235606

Stylusなどのスタイルシート適用する拡張と共に使う。増田にだけ有効。面倒だけどスマホでも動く。スパム対策ビジネス詐欺URLを中心に常時メンテナンス中。

スマホでのユーザースクリプトの動かし方
https://chatgpt.com/share/6936aa6a-e2dc-800f-ab39-021d68a25b87

検索用: はてなブックマーク はてブ はてな匿名ダイアリー 増田 スパム キーワード NGワード フィルタ ミュー非表示 削除 隠す ブロック ユーザースクリプト ユーザースタイル hatena bookmark anond spam keywords ngwords filter mute hide hidden display none block userscript JavaScript js css style

anond:20251209224022

でもキモくて金のないおっさんNGフィルタにしてくれないんですよねわかります

はてなブックマーク増田一覧向けNGフィルタ

はてなブックマーク増田一覧の、さらに「すべて」(1 user)をチェックしている希有な人向けのユーザースクリプトを公開します。

https://b.hatena.ne.jp/site/anond.hatelabo.jp/?sort=eid

// ==UserScript==
// @name        Hatena Bookmark Anond Filter
// @namespace   https://b.hatena.ne.jp/site/anond.hatelabo.jp/
// @description はてなブックマークの『はてな匿名ダイアリー』の記事のうち、指定したNGワードが含まれ投稿非表示します。
// @match       https://b.hatena.ne.jp/site/anond.hatelabo.jp/*
// @grant       none
// @version     2.0.2026.01.17.0009
// ==/UserScript==

(function(){
  const SCRIPTID = 'HatenaBookmarkAnondFilter';
  console.time(SCRIPTID);
  const CLASSNAME = 'filtered';/*フィルタ該当要素*/
  const CHECKED = 'checked';/*二重チェック回避フラグ*/
  const ONCE = 1, AP = 2, INTERVAL = 3;/*適用タイミング*/
  const NGWORDS = {/* 合計100ポイント非表示判定(ただし1つの記事内で同じワード複数使われても1度しか加算しない) */
    '100': [/*即NG確定ワード*/
      'dorawii',
      'あおやまちゃん', 'ボスマン', 'MNK',
      '電気通信大学たいてい', 'なんぴょん', 'れめくん', 'リュックサック野郎', 'boushi_inst', 'hakaikami', 'Rekyu', 'iloveootaku_2',/*電気通信大学たいてい鉄道研究会れめくん(頻出)*/
      /*A-G*/'a9w8ru6fqyxqfv9', 'admirail_togo', 'akibakko6348', 'alf1974al', 'amatukiseiru', 'anapgoeson', 'aoi_mizuho', 'asapgoeson', 'asupgoeson', 'b6jbpsji91ieigt', 'bmi22yo', 'boushi_ob', 'buscholarx', 'bw0531', 'circlecavok', 'disney1007cla', 'dora22sibuya', 'donkotrain', 'ecotosk', 'factomodachi', 'fft_dareka', 'gmhtcyznf_abc', 'goesonanap', 'gyudon_honmono',
      /*H-N*/'h13_yokohama', 'h2twi', 'hamaishogo1111', 'haru_mofumoffu', 'hermitv8', 'hinolovelove', 'hnmk0127_03', 'inaken17_', 'inte235dy', 'ixtabes', 'jamcombatge', 'kawachiasukanew', 'kaoru_ai1991', 'keio9730F', 'kiha2228', 'koreanlabsfc', 'koyounoyooko', 'kqlex1500', 'kurakamasan', 'kurotamaxxx', 'kt_ruma_1372', 'lightningreen77', 'matya_uec', 'minamihinawot', 'minori0151', 'monkichi_22', 'mugen_08i', 'mukoroku651', 'nakano6409', 'nanpyong', 'new_oer', 'nimouec', 'NoName_thUFO', 'norannnde',
      /*O-U*/'oreizmmiporin', 'orenotanoshimi', 'osaka_sirokichi', 'papepoco', 'pasotokon', 'pm95uq', 'reme_kun', 'ruin_2002', 's03_amurtk2731', 'sacchan03110319', 'seisu_bot', 'senanana_cos', 'shinano_115', 'shineleaf1372', 'shop_bullet', 'shurimpy', 'soroisoroi', 'sui_pm95uq', 'sweidan821858', 'taiyaki_level2', 'takao_straight5', 'taking0000', 'tarotaromusic1', 'tc201_501', 'tocarbarn', 'toshikimiyazaki', 'train_magician', 'tx9y2cpwdz27255', 'u2fap5u4zw57811', 'uec15take', 'uecrail',
      /*V-Z_0-9*/'vampire_mio', 'vbdmnwefknmxsdm', 'vp20th', 'wafue', 'wakasato_', 'walkingniwatori', 'wataameexpress', 'ya4975349616894', 'ymbk_arisa', 'yms_uec16', 'yuuya_1104_uec', '__________ob', '_chocorail_', '_doitforthewin_', '_toeshin', '_unigmo', '100mph_no_yuuki', '2969364x', '2rtkvn34il2783', '86lilxw1',
      /*tadaup.jp*/'1dOaKWk3.jpeg', '1sL2VBZ5.jpeg', '1uNK2iEP.jpeg', 'CBUHadpD.jpeg', 'CgJlF4Wr.jpeg', 'CGTtm0Ev.jpeg', 'CIxj8clS.jpeg', 'CqbERPdQ.jpeg', 'CTZsA2wM.jpeg', 'CWY2m7rS.jpeg', 'CZVCEgd1.jpeg',
      'テクウヨ', '自己放尿',
      ' ーーーーーーーー', 'https://anond.hatelabo.jp/20260107144223',/*AI問答貼り付け増田*/
    ],
    '90': [/*ほぼNGだが確定ワード必要*/
      'https://megalodon.jp/',
    ],
    '10': [/*ほぼNGの確定ワード*/
      '電気通信大学',
      '電通大',
      '駿河台大学',
      '学生課',
      '教務課',
      '鉄道研究会',
      '鉄研',
      '通勤特快',
      '不正乗車',
      '性慾',
      '穢い',
      'エッタ',
      'キセル',
      'uec',
    ],
  };
  const sites = {
    'prefix': [
      ['selector', '(modifier)', '(css)', '(REPEAT)'],
    ],
    'https://b.hatena.ne.jp/site/anond.hatelabo.jp/': [
      ['section.entrylist-unit li.js-keyboard-selectable-item', li => {li.querySelector('li.entrylist-contents-category > a').textContent = li.dataset.matches}, `.${CLASSNAME}{display: none;}`, AP],
    ],
  };
  const rules = sites[Object.keys(sites).find(prefix => location.href.startsWith(prefix))];
  if(rules === undefined) return console.log(SCRIPTID, 'Not found any sites.');
  const scores = Object.keys(NGWORDS).map(Number).reverse();/*数値インデックス順に取り出されたkeysを逆順にして100から並べ直す*/
  const filter = function(selector, modifier){/*各要素に対してNGワード判定して、該当したら追加でmodifierも適用する*/
    document.querySelectorAll(selector).forEach(e => {
      if(e.dataset[CHECKED]) return;
      e.dataset[CHECKED] = 'true';
      const text = e.textContent.toLowerCase();
      let total = 0, matches = [];
      for(const score of scores){
        for(const word of NGWORDS[String(score)]){
          if(text.includes(word.toLowerCase())){
            total += score;
            matches.push(word);
            if(total >= 100){
              e.classList.add(CLASSNAME);
              e.dataset.matches = matches.join(', ');
              if(modifier) modifier(e);
              return;
            }
          }
        }
      }
    });
  };
  /* ONCE(一括適用) */
  rules.forEach(rule => {
    const [selector, modifier, css] = rule;
    console.log(SCRIPTID, 'ONCE:', selector);
    filter(selector, modifier);
    if(css){
      const style = document.createElement('style');
      style.dataset.script = SCRIPTID;
      style.type = 'text/css';
      style.textContent = css;
      document.head.appendChild(style);
    }
  });
  /* AP(AutoPagerize) */
  rules.filter(rule => rule[3] === AP).forEach(rule => {
    const [selector, modifier] = rule;
    document.addEventListener('GM_AutoPagerizeNextPageLoaded', e => {
      console.log(SCRIPTID, 'AP:', selector);
      filter(selector, modifier);
    });
  });
  /* INTERVAL */
  rules.filter(rule => rule[3] === INTERVAL).forEach(rule => {
    const [selector, modifier] = rule;
    setInterval(function(){
      console.log(SCRIPTID, 'INTERVAL:', selector);
      filter(selector, modifier);
    }, 1000);
  });
  console.timeEnd(SCRIPTID);
})();
/* Hatena Bookmark Anond Filter */
.filtered{
  display: block !important;/*上書き*/
  opacity: .25 !important;
}
.filtered:hover{
  opacity: .75 !important;
}
.filtered li.entrylist-contents-category{
  background: red !important;
  font-weight: bold;
}

検索用: はてなブックマーク はてブ はてな匿名ダイアリー 増田 スパム キーワード NGワード フィルタミュー非表示 削除 隠す ブロック ユーザースクリプト ユーザースタイル hatena bookmark anond spam keywords ngwords filter mute hide hidden display none block userscript JavaScript js css style

小学4年生の子供のはじめてPCとしてRaspberry Pi 500を与えた話

娘の為にパソコンへ詳しすぎる夫を倒したいで注目された「学生、それも幼さの残る年頃の子へはじめてPCをどうするのか?」というテーマで、Linuxを与えた家庭の別例としてこのエントリを書いている。

そして前提として、このエントリは「実はLinux使ったこと無いんだ」「Raspberry Piって稀に聞くラズパイってヤツだよね?」みたいな、ふわっとした認識の層に向けて書いている。

決して「KVMで完全仮想化してLinuxWindows用途に応じてリソース分配してる。ディストロは純関数型のNixOSで、Nix言語可能な限り-march=nativeで自家コンパイルしてるんだよね」みたいな層には書いてない。

何はなくとも結論:染まってない子供Linuxでも普通に使う

勿体ぶっても仕方ないので結論から言えば、WindowsMacAndroidiOS(iPadOS)に染まりきっていない子供は親の想定を超えて極々普通にLinuxRaspberry Pi工場出荷状態プリインストールされているRaspberry Pi OSを使う。

ここで言う「染まる」というのは「ウチの子普段からiPadYoutubeとかゲームとかしてるからなぁ」程度の染まり具合なら無視できるレベルなので全く障害にならない。

手遅れな染まり具合としては「ウチの子WindowsでOBS使って自らYoutube配信してます」とか「ウチの子WindowsAbleton Live使ってDTMしてます」とか「ウチの子大学レポート書くのにmacOS使ってます」とか「ウチの子iPadSwift Playgrounds使ってプログラミング学習してます」とかそういうレベルだ。

アナタの子供がこのレベルにまで染まっていない場合アナタの子供へRaspberry Pi 500を与えると何も疑問に思わず普通にパソコンとして使う(パソコン操作方法へ疑問を持つとかそういう話じゃなく、目の前のモノをパソコンとして認識する)。

いやそもそもラズパイって何なの?何でそんなに話題なの?

ラズパイRaspberry Pi英国で立ち上げられたRaspberry Pi財団(注:英字ページ)が規格・設計販売をするシングルボードコンピュータという種別の小型コンピュータのことだ。

現在の最新版第5世代Raspberry Pi 5で、搭載ワーキングメモリによって価格が違うが、最も高価なワーキングメモリ16GB版で25,000円前後(2025/12/09現在価格)という圧倒的な低価格が人気の理由の1つだ。

何故ここまで低価格なのか?と言えば安価部品構成され、搭載されるSoC(CPUみたいなもん)も低性能で、その性能は約10年前の普及価格帯(〜15万円くらい)のノートパソコン程度の性能しか無い。

「いや10年前ってゴミじゃん」と考えるのは早計で、逆に言えば10年前の普及価格ノートパソコン可能だったことはRaspberry Pi 5でも可能

そう言われ「自分10年前に普及価格ノートパソコンネットしたりMS Office文書作成したり軽くゲームしてたけど?」と気付いた人は「Raspberry Pi 5で何ができるか?」の想定が浮かんだのではないだろうか?そう、かなり色々できる。

そして工場出荷状態プリインストールされるRaspberry Pi OSRaspberry Pi 5自体計算リソースをできるだけ使わないよう軽量にできており、10年前当時のWindowsで使われていたExplorerよりも計算リソースの消費が少ないので、技術進歩も相まって当時よりも出来ることの幅が少々広くなっている。

何故そんなに話題なのか?手のひらの上に10年前の普及価格ノートパソコン並みの性能のコンピューターが乗るのだ。そしてすごく安い。

更にラズパイには電子工作活用できるGPIOピンというのが実装されていて各種電子センサー類などと連携することで電子工作もできてしまう。

こんなもの情報工学畑の連中が注目しないわけがなく、前述したRaspberry Pi財団のページを読めばわかるが世界中で大定番シングルボードコンピューター、何ならシングルボードコンピュータ代名詞となっており、情報工学に詳しくない人が「ラズパイってよく聞くけど何なの?」と何処かで耳にするレベルなのである

2万円半ばなら我が家でも導入しようかな・・・いやでも見せたくないWebページとかあるしなぁ

安心して欲しい、Raspberry Pi OSではGoogle Chromeが動く。

まずGoogleアカウント子供用に作成したGoogleアカウント管理するためのファミリーリンクというサービス存在する。ファミリーリンク子供GoogleアカウントログインされたGoogle Chromeブラウザでのインターネットコンテンツフィルタ機能提供してくれる。

このインターネットコンテンツフィルタ小学生中学生高校生高校生プラスと4段階に分かれており、それぞれに適したフィルタリング強度で働く。

続いて、実はGoogle Chromeは様々な設定をポリシーとして持つことが可能で、例えばゲストモードの無効化シークレットモード無効化指定したGoogleアカウント以外でログイン不可が可能だったりする。

情報技術親和性の高いヤンチャな子はGoogle Chromeからログアウトしたりゲストシークレットモードフィルタリングを回避しようとするので、子供Raspberry Piをはじめてパソコンとして与える場合はこれらを無効化しておくことをオススメする。

補足を続けると子供勝手Firefoxとか別のWebブラウザを導入することを防ぐこともRaspberry Pi OSはできる。

それで与えたRaspberry Pi 500って何よ?

Raspberry Pi 5をパソコンキーボードへ内蔵した形態を持つRaspberry Pi 5シリーズの1つ。ワーキングメモリは8GBで価格20,000円未満。

パソコンキーボードRaspberry Pi 5が内蔵されているのでRaspberry Pi 500に電源取ってHDMIケーブル(注:ラズパイ側はmicro HDMI)をTV接続すると直ぐにパソコンというコンセプト。

小学生の子供にとっての目玉はJavaMinecraft動作すること。SwitchiPadでいつも遊んでる統合マイクラじゃなくてYoutubeとかで観るJavaマイクラ自分パソコンで動いちゃうのだ。

Switch 2の登場でPCゲーが色々リリース(予定)されている中で、Javaマイクラはどうしても"パソコン"が必須だったが、Raspberry Pi 5シリーズはそれを実現する。それが2万円のお値段で出来るので親の懐的にもありがたい。

Steamは動かないがオープンソース系のゲームも充実している(Steam開発のValve社がRaspberry Piシリーズ採用しているARMアーキテクチャ対応を進めているというかなり確度の高い噂は存在する)。

実は直近でRaspberry Pi 500の上位版Raspberry Pi 500+(日本語配列)が登場予定で、こちらはワーキングメモリが16GBのお値段40,000円くらい。

4万円とそこそこの価格になってきているが、キーボード自体メカニカルキーボードとなりキーキャップCherry MX互換、256GB SSD搭載でストレージスピードもアップ(=Minecraftワールド読み込みが速くなる)。上位版Raspberry Pi 500+が高すぎると感じるなら素のRaspberry Pi 5ワーキングメモリ16GB版は25,000円前後だしこちらで良い。

ゲーム以外に注目点は無いの?

ある、というかコッチがメインなんだけれども、何処までゆるい感じでやって良いのかわからなくて最後に回した。

まずLinux界隈が中心となって開発されているGIMPやKritaみたいな画像編集お絵かきソフトLinuxたるRaspberry Pi OSの方が安定かつ速い。しかWacomXP-Penなどのペンタブ・液タブが動作するので絵描きに興味のある子は嬉しいんじゃなかろうか?(クリスタじゃないけれどね。安い分ペンタブ費用に回せるよ)

音楽ではDTMステップシーケンサー系のDAWであるLMMS(Linux MultiMedia Studio)は日本無料DTMシーンでREAPERと人気を二分していた歴史があり、Web上に情報がいっぱいあるし何ならREAPERLinuxでも動作する。オープンソース系のシンセ音源やCC0で提供されるサンプリング音源も大量にある。

オフィス環境Libreofficeは言うまでもないだろう。Blender3DCGをすることだって出来るし、LibreCADやFreeCADで設計だって出来てしまうし、OBSも動くから実際やろうと思えばYoutube配信もできる。

そして当然ながらプログラミング環境WindowsMacでも動くと言われてしまえばそれまでだが、古典的VimEmacs、そして近年人気のVS Codeスマホアプリ開発Android Studioゲーム開発にGodot Engine、他にはtmuxGitDockerなどなど挙げればキリがないほど充実している。これらは子供向けRaspberry Pi OSからといってニセモノの子供だましなんかじゃない、それでお金を稼いでる現役プログラマーが使っているアプリケーションと全く同一のアプリケーションだ。

子供の様子

んで、子供Raspberry Pi 500をどうしてるのか?と言えば、まぁ呆れるほど毎日触っている。

何なら電源なければ動かないのに布団へ持ち込んで抱きかかえて寝ているのを見つけてしまい、そんなに嬉しかったんかと笑ってしまった。

「お父さんコレどうするの?」とほぼ毎日聞かれて「こういうのはこのソフトを使う。使い方教えてやる」というのが毎日の親子の会話になっている。

別にパソコンけが将来に必要ものではないが、この喜びようを見たら与えて悪くなかったなとは思ってる。

2025-12-05

[]

Gmail過去メール検索していたらPayPalからダイレクトメールが目についた。

PayPalアカウント連携するとPerplexity Pro 1年分 ($200相当) が無料になるとの事。

普段DMフィルタゴミ箱直行だが、たまに確認するといいこともあるもんだ。一足早いクリスマスプレゼントになった。

2025-12-03

数字で絵を描いてる

自分AIイラストを描くようになったのは、一昨年くらいからだ。

Stable Diffusionを使って、LoRAを追加して、ControlNetも入れて、MidjourneyやNovelAIも試した。

出力されるイラストを見る都度アートだと思っていたし、創造だと信じていた。

でもある日、ふと気づいた。

これ、突き詰めたら全部データじゃね?

じゃあ数字で絵って描けるんじゃね?

思ったら試したくなるタイプなんだ。

まずPNG画像バイナリエディタで開いた。

使ったのは HxD。

Windowsで動く、定番のアレ。

画像を開くと――

そこに出てくるのは、色でも形でも影でもなく、

89 50 4E 47 0D 0A 1A 0A 00 00 00 0D


とか、

49 44 41 54 78 9C EC DD 07


とかの、数字アルファベットの羅列。

最初意味がわからない。

でも調べると全部意味がある。

89 50 4E 47 → PNGのヘッダ

IHDR → イメージ属性

IDAT → ピクセルデータ

IEND → 終端

一個ずつ追っていくと、

全部、0と1の変換でしかない。

そこで、自分で書き換えてみた。

実験

目の色を変えてみたい

まず元画像の中で瞳のRGB値の近いものを探す。

Pythonで以下のスクリプトを書いた。

from PIL import Image
import numpy as np
:img = Image.open("mina.png")
:arr = np.array(img)
arr[(arr[:,:,0]<80) & (arr[:,:,1]<80) & (arr[:,:,2]>120)] = [200, 50, 50]
Image.fromarray(arr).save("mina_edit.png")


すると、青い目がボルドーっぽい赤に変わった。

実験

線画を太らせたい

GIMPでもPhotoshopでもなく、

コードだけでいく。

import cv2
img = cv2.imread("mina.png")
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
edges = cv2.Canny(gray, 80, 150)
dilated = cv2.dilate(edges, None, iterations=2)


線が、太った。

ここで不思議感覚が生まれた。

ペンを使って描いたわけじゃない。

ブラシで塗ったわけでもない。

数字で絵を動かしてる感覚

実験

影を深くする

shadow = arr.copy()
shadow[:,:,0] = shadow[:,:,0] * 0.7
shadow[:,:,1] = shadow[:,:,1] * 0.7
shadow[:,:,2] = shadow[:,:,2] * 0.7


これだけで影が落ちる。

この作業を続けて気づいたこと。

ブラシやペンで絵を描くのは、画家としての思考

レイヤーフィルタで絵を描くのは、デザイナーとしての思考

コードで絵を描くのは、エンジニアとしての思考なんだ。

同じ絵でも思考フレーム全然違う。

そして、さらに深い気づき

画像って「絵」じゃない。

絵に見える何かであって、本質配列

[[34, 55, 88], [36, 60, 90], [40, 75, 120], …]


RGB値の行列

それに

・ガンマ補正をかける

・ローパスフィルタをかける

シャープネスをかける

ベクトル変換をする。

その操作は全部、数字を変換してるだけ。

“色を塗っている”んじゃない。

数字操作している”。

そう気づいた瞬間から、絵を描くのが楽しくなった。

だってペンを握ってるんじゃなくて数学を握ってる感覚なんだ。

最近好きな音楽FFT解析して、その周波数スペクトル画素に変換して、色を割り当てて絵を生成することもある。

まりから絵を描くことも可能になった。

最後

自分は、数字世界を描く人間だ。

から今日も、ディスプレイの前でコードを走らせながら微笑んでる。

絵は美しい。

そしてそれよりも、数字は美しい。

2025-12-01

anond:20251201173706

子供の金切り声って、親が聞いてても不快なんだろうか

親にはそれに対応したフィルタ存在するのかな?

毎度毎度、子供騒音クレームするとはてなでは叩きが湧くけどあの超音波は俺も勘弁してほしいと思う

耐えられる人菩薩じゃないのかな

dorawiiメモ

anond:20251201112916

レス我慢できない未就学児

煽り耐性ゼーーーローーーw

で、フィルタ入れるとどうなるのー?w

答えられないと負けだから

anond:20251201111136

おまえに話してない

おまえはフィルタ入れたらどうなるかをはよ答えろ

逃げてるじゃねーよ負け犬

anond:20251201110810

からしかけてくる「俺」の口調もそっくりなの?w

で、フィルタいれるとどうなるの?

どうなるのーーーーーーーーーーーーーーーーーーーーーー?????

anond:20251201110957

で、フィルタ入れるとどうなるの?w

答えられないなら負けだが?w

anond:20251201110131

で、フィルタ入れるとどうなるの?ww

答えられないんだw

anond:20251201105041

負け宣言してて草w

おまえすぐ本音ぼろぼろこぼれてて本当に知能障害なんだなってよくわかるよ

で、フィルタ入れるとどうなるの?w

anond:20251201105231

知能障害はほんとどうしようもないなあーw

署名できなくなってることを忘れて「フィルタ入れろ」とか言い出すしw

anond:20251201105636

レスするっていつどこに書いた?

おまえが「最後レスすれば勝ち」って言ってたのはしってるけど

俺はそんなルール定めてないが?w

自他境界壊れた?w

で、フィルタ入れるとどうなるの?w

ログイン ユーザー登録
ようこそ ゲスト さん