f8g

画像から文字へ変換する

http://taro.haun.org/pgm2kanji.html
JavaScript用変換表 (全角スペース付け足し)

var chars = ["\u3000", "\uFF0E", "\u00B4", "\u3001", "\uFF3E", "\u3002", "\u2018", "\uFF1B", "\u30FE", "\u30FC", "\u30CE", "\u3043", "\u304F", "\u30B7", "\u3079", "\u3057", "\u3050", "\u3006", "\u3005", "\u3047", "\u30A2", "\u3054", "\u3065", "\u308A", "\uFF1F", "\u3048", "\u3072", "\u305D", "\u306B", "\u3055", "\u304B", "\u3051", "\u3056", "\u305B", "\u304C", "\u4EDD", "\u3080", "\u305C", "\u5DFE", "\u3042", "\u306C", "\u306D", "\u79BE", "\u3070", "\u5F15", "\u307C", "\u3071", "\u4E11", "\u307D", "\u4F4D", "\u5F80", "\u5B89", "\u4F9D", "\u52A0", "\u82A6", "\u674F", "\u54C0", "\u5B9B", "\u5A03", "\u59F6", "\u963F", "\u55B6", "\u65ED", "\u6328", "\u8475", "\u4E9C", "\u610F", "\u7D62", "\u6E25", "\u60AA", "\u611B", "\u9022", "\u7DAD", "\u7C9F", "\u978D", "\u831C", "\u63E1", "\u5516", "\u8466", "\u7ABA", "\u8B02", "\u97FB", "\u5712", "\u9913", "\u8F44", "\u78EF", "\u7A50", "\u9C2F", "\u95C7", "\u5283", "\u5687", "\u9C3B", "\u8276", "\u99A8", "\u6B1D", "\u8972", "\u919C", "\u9190", "\u9D6C", "\u56A2", "\u8F5F", "\u7AC3", "\u652C", "\u7E8F", "\u56C8", "\u66E9", "\u5EF3", "\u9A6A", "\u9C78", "\u758A", "\u7228", "\u56D1", "\u7E9B", "\u7AC7"];

画素値から変換表への濃度変換。

var f = (function(){
	var a   = chars.length / 255;
	var min = 0;
	var max = chars.length - 1;

	return function(x){
		var v = Math.round(a * (255 - x));

		return (v <  min) ? min
		      :(v >= max) ? max
		      : v;
	};
})();

http://media.tumblr.com/CAiSbEIuHcz46t8noArPibvF_500.png
普通の変換。使用

var s = [];
var ip = ImageProcessing.load("img3.png");

for(var y = 0; y < ip.canvas.height; y ++){
	for(var x = 0; x < ip.canvas.width; x ++){
		s.push(chars[f(ip.getPixel(x, y).grayScale().r)]);
	}
	s.push("\n");
}

document.getElementsByTagName("pre")[0].innerHTML = s.join("");
                                                                                                                                 
                                                                                                                                 
                                                                                                                                 
                                                                                                                                 
                                                                                                                                 
          .粟竇竇竇竇竇竇竇ざ                                                                                                             
        り竇竇竇竇竇竇竇竇竇竇竇竇竇ざ                                                                                                          
      .粟竇竇竇竇竇竇竇竇竇竇竇竇竇竇爨‘                                                                                                         
     .粟竇竇竇竇竇轄、   .粟竇竇竇爨‘                                                                                                         
     哀竇竇竇竇竇ざ        哀竇爨‘                                                                                                         
    シ廳竇竇竇竇ざ          シ攬‘   シ廳竇竇竇竇竇竇竇竇ぽ        巾竇竇竇竇ざ  り竇竇竇竇竇ぽ     哀竇竇竇竇ぽ        シ廳竇竇竇悪  シ廳竇竇竇竇竇竇竇竇ぽ            哀竇竇竇竇竇竇竇ぽ         
    哀竇竇竇竇悪                り竇竇竇竇竇竇竇竇竇竇竇竇悪      巾竇竇竇竇ざ哀竇竇竇竇竇竇竇竇爨‘   り竇竇竇竇轄、       哀竇竇竇竇ざ り竇竇竇竇竇竇竇竇竇竇竇竇悪       ´攬竇竇竇竇竇竇竇竇竇竇竇ざ       
   ´攬竇竇竇竇ざ                り竇竇竇竇竇竇竇竇竇竇竇竇竇悪     巾竇竇竇竇竇竇竇竇竇竇竇竇竇竇竇悪   .粟竇竇竇囑ぇ      ´攬竇竇竇轄、 り竇竇竇竇竇竇竇竇竇竇竇竇竇悪     シ廳竇竇竇竇竇竇竇竇竇竇竇竇ざ       
   り竇竇竇竇爨‘                り竇悪      哀竇竇竇竇竇ざ    巾竇竇竇竇竇爨‘   哀竇竇竇竇囑ぇ   巾竇竇竇竇悪      り竇竇竇竇ぽ  り竇悪      哀竇竇竇竇竇ざ   ´攬竇竇竇竇ぽ    ´攬竇竇ざ       
   巾竇竇竇竇轄、                          巾竇竇竇竇悪    巾竇竇竇竇ざ     .粟竇竇竇竇ざ   シ廳竇竇竇爨‘     哀竇竇竇爨‘            巾竇竇竇竇悪   り竇竇竇竇ぽ        哀ざ       
   哀竇竇竇竇悪                           シ廳竇竇竇悪    巾竇竇竇竇ざ      巾竇竇竇竇ぽ    哀竇竇竇竇ざ    ´攬竇竇竇悪             シ廳竇竇竇悪   巾竇竇竇竇ざ                 
   哀竇竇竇竇悪                           ´攬竇竇竇轄、   巾竇竇竇竇ざ      り竇竇竇竇悪    り竇竇竇竇悪    り竇竇竇竇ざ             ´攬竇竇竇轄、  巾竇竇竇竇爨‘                
   哀竇竇竇竇悪                      ´攬竇竇竇竇竇竇竇竇轄、   巾竇竇竇竇ざ      り竇竇竇竇悪    .粟竇竇竇爨‘   哀竇竇竇轄、        ´攬竇竇竇竇竇竇竇竇轄、  り竇竇竇竇竇竇竇竇ざ             
   哀竇竇竇竇悪                  .粟竇竇竇竇竇竇竇竇竇竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪     巾竇竇竇竇ざ  シ廳竇竇竇ぽ     .粟竇竇竇竇竇竇竇竇竇竇竇竇轄、  ´攬竇竇竇竇竇竇竇竇竇竇囑ぇ         
   巾竇竇竇竇轄、                り竇竇竇竇竇竇竇竇竇竇竇竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪     シ廳竇竇竇悪  巾竇竇竇囑ぇ    り竇竇竇竇竇竇竇竇竇竇竇竇竇竇轄、   シ廳竇竇竇竇竇竇竇竇竇竇竇轄、       
   り竇竇竇竇爨‘               シ廳竇竇竇竇竇爨‘  ´攬竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪      哀竇竇竇囑ぇ.粟竇竇竇悪    シ廳竇竇竇竇竇爨‘  ´攬竇竇竇轄、    .粟竇竇竇竇竇竇竇竇竇竇竇悪       
   シ廳竇竇竇竇ざ               哀竇竇竇竇悪     ´攬竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪      り竇竇竇竇ぽシ廳竇竇竇ざ    哀竇竇竇竇悪     ´攬竇竇竇轄、        哀竇竇竇竇竇竇竇竇爨‘      
    哀竇竇竇竇悪              .粟竇竇竇爨‘     ´攬竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪      ´攬竇竇竇轄ね竇竇竇轄、   .粟竇竇竇爨‘     ´攬竇竇竇轄、            哀竇竇竇竇囑ぇ      
    り竇竇竇竇竇ざ          シ攬‘´攬竇竇竇轄、     ´攬竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪       巾竇竇竇竇竇竇竇竇ぽ    ´攬竇竇竇轄、     ´攬竇竇竇轄、  加ぇ        .粟竇竇竇囑ぇ      
     哀竇竇竇竇竇ざ        巾竇爨‘.粟竇竇竇爨‘     り竇竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪       シ廳竇竇竇竇竇竇囑ぇ    .粟竇竇竇爨‘     り竇竇竇竇轄、  哀竇ぽ       .粟竇竇竇爨‘      
     .粟竇竇竇竇竇轄、    巾竇竇竇爨‘ 哀竇竇竇竇轄、   哀竇竇竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪        哀竇竇竇竇竇竇悪      哀竇竇竇竇轄、   哀竇竇竇竇竇轄、  哀竇竇竇ぽ    .粟竇竇竇竇ぽ       
      .粟竇竇竇竇竇竇竇竇竇竇竇竇竇竇爨‘ シ廳竇竇竇竇竇竇竇竇竇鰯廳竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪        り竇竇竇竇竇竇ざ      シ廳竇竇竇竇竇竇竇竇竇鰯廳竇竇竇轄、  哀竇竇竇竇竇竇竇竇竇竇竇竇竇轄、       
        巾竇竇竇竇竇竇竇竇竇竇竇竇囑ぇ   り竇竇竇竇竇竇竇竇ざ´攬竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪        ´攬竇竇竇竇轄、       り竇竇竇竇竇竇竇竇ざ´攬竇竇竇轄、  哀竇竇竇竇竇竇竇竇竇竇竇竇悪         
          ´攬竇竇竇竇竇竇囑ぇ       ´攬竇竇竇竇ぽ  ´攬竇竇竇轄、   巾竇竇竇竇ざ      シ廳竇竇竇悪         巾竇竇竇竇ぽ         ´攬竇竇竇竇ぽ  ´攬竇竇竇轄、    ´攬竇竇竇竇竇竇竇ざ           
                                                                                                                                 
                                                                                                                                 
                                                                                                                                 
                                                                                                                                 
                                                                                                                                 
                                                                                                                                 

モザイクして変換。

var s = [];
var cellSize = 3;
var ip = ImageProcessing.load("img3.png").mosaic(cellSize);

for(var y = 0; y < ip.canvas.height; y += cellSize){
	for(var x = 0; x < ip.canvas.width; x += cellSize){
		s.push(chars[f(ip.getPixel(x, y).grayScale().r)]);
	}
	s.push("\n");
}

document.getElementsByTagName("pre")[0].innerHTML = s.join("");
                                           
   ヾ巾巾ぐ                                    
  宛竇穐握爨渥                                   
 巾竇加  ‘あ、葵握握哀ヾ が握ひ意握け 姶意  ヾ茜ぜね握握悪ご  ?愛握悪ぐ  
 園爨^    。姶巾引廳園 安竇渥巾鰻疊‘安竇り ぱ竇ぐ安巾巾鰯疊くに竇旭巾旭禾  
 襲嚢       く巾闇攬.安竇ぃ 丑竇ごー爨旭 轄轄   ぜ挨竇そ位竇杏ぐ    
 劃廳.    ぐ醐竇唖轟囈.安竇ぃ ぬ竇り 茜轟ぐ竇ね´粟竇劃闇竇さシ醜竇竇纏か  
 阿竇に   シ葵爨ー 維囈.安竇ぃ ぬ竇り け竇餓囈^ひ竇ば が竇さヾ ぇ引爨謂  
 ‘馨曩ぽ巾維唖加竇位引轟囈.安竇ぃ ぬ竇り ´醐竇葵 ぐ竇粟巾韻竇さ宛鞍巾ぱ爨芦  
  ^往握握加し、旭握が位悪.が握ヾ そ握ぐ  ね握し  ぬ握哀そ握アぇ旭握握ぜ