Hyunjun

chrome crwaling program

1. 계획서 업로드 [강현준, 권은진, 김효은, 하미르] 라즈베리파이에 이미지 프로세싱 딥러닝을 적용한 자동화 계산 시스템
1. 계획서 업로드
[강현준, 권은진, 김효은, 하미르] 라즈베리파이에 이미지 프로세싱 딥러닝을 적용한 자동화 계산 시스템
2. 중간보고서(논문) 업로드 [강현준, 권은진, 김효은, 하미르] 이미지 인식 딥러닝을 적용한 자동화 계산 시스템_중간보고서(논문)
2. 중간보고서(논문) 업로드
[강현준, 권은진, 김효은, 하미르] 이미지 인식 딥러닝을 적용한 자동화 계산 시스템_중간보고서(논문)
3. simple_convnet 원본코드 업로드
4. params.pkl->params.csv
프로그램의 속도보장을 위해 python->c++ 컨버팅 작업이 필요함
python 코드에서 가중치를 pickle 파일에 저장하는데 c++에서는 pickle 파일을 읽는 데에 어려움이 있음
pickletools라는 라이브러리가 있지만 에러가 많고, 자바, 파이썬, C++ 여러 언어를 지원해 무겁기 때문에 속도를 올리기 위한 컨버팅 작업에는 적절하지 않음
......@@ -15,23 +20,28 @@ pickletools라는 라이브러리가 있지만 에러가 많고, 자바, 파이썬, C++ 여러 언어를
5. params.pkl->params.txt
입력처리할 때 csv파일로 읽으면 속도가 느림
이 또한 속도를 올리기 위한 컨버팅 작업의 목적에 맞지 않기 때문에 params.pkl 파일을 csv 파일이 아닌 txt 파일로 바꿈
6. python test 코드 추가
test하는 부분만 골라내기 위해 python test 코드를 추가(test.py), simple_convnet 내용 추가
7. python test 폴더 추가
python test 폴더에는 test에 필요하지 않은 train 부분을 삭제함
8. make_img.py 추가
이미지를 불러와 (32,32,3)의 크기로 resize한 후 input.txt에 저장함
9. simple_convnet_cpp 코드 추가
1) layers.hpp : Convolution, ReLu, Normalization, Pooling, DW_Conv등 각 layer가 구현
2) SimpleConvNet.hpp : 딥러닝 모델이 구현
3) input.txt : make_img.py코드로 만든 이미지를 (32,32,3)의 크기로 만들어 txt파일로 저장
......@@ -45,3 +55,10 @@ python test 폴더에는 test에 필요하지 않은 train 부분을 삭제함
10. google_image_crwaling 코드 추가
필요한 데이터셋을 만들기 위한 google_image_crwaling 코드 추가
11. chrome_crwaling 확장프로그램 추가
앞서 만든 코드는 1회에 20장의 사진만 다운로드 가능
데이터셋을 만들기 위해서는 훨씬 더 방대한 양의 데이터가 필요함
googel chrome의 확장프로그램을 활용한 구글 이미지 검색 결과 크롤링 프로그램 구현
\ No newline at end of file
......
This diff could not be displayed because it is too large.
{
"name": "Highlight some phrases",
"description": "Hightlight some pre defined text from websql database after page loads",
"version": "0.1",
"manifest_version": 2,
"browser_action": {
"default_icon": "icon.png"
},
"content_scripts": [
{
"matches": [
"http://*/*",
"https://*/*"
],
"js": ["jquery.js", "popup.js"]
}
]
}
\ No newline at end of file

var i = 0;
var start = false;
function imgDown() {
if(!start)
return;
var base64 = $('.rg_ic.rg_i').eq(i).attr( 'src' );
if(typeof base64 === "undefined" ){
alert('마지막 결과입니다.');
clearInterval(b);
start = false;
return;
}
if(base64.indexOf("base64") != -1)
downBase64(i+".png",base64);
else
downUrl(i+".png",base64);
i++;
}
function scrolldn() {
if(!start){
clearInterval(a);
return;
}
document.documentElement.scrollTop = document.body.scrollHeight;
$('html, body').scrollTop(document.body.scrollHeight);
}
function downBase64(filename, base64) {
var pom = document.createElement('a');
pom.setAttribute('href', base64)
pom.setAttribute('download', filename);
if (document.createEvent) {
var event = document.createEvent('MouseEvents');
event.initEvent('click', true, true);
pom.dispatchEvent(event);
}
else {
pom.click();
}
}
function downUrl(filename, url) {
var img = new Image();
img.setAttribute('crossOrigin', 'anonymous');
img.src = url;
var dataURL = url;
img.onload = function () {
var canvas = document.createElement("canvas");
canvas.width =this.width;
canvas.height =this.height;
var ctx = canvas.getContext("2d");
ctx.drawImage(this, 0, 0);
dataURL = canvas.toDataURL("image/png");
downBase64(filename, dataURL);
};
}
var a;
var b;
window.onkeyup = function(e) {
var key = e.keyCode ? e.keyCode : e.which;
if (key == 49) {
start = true;
a = setInterval(scrolldn, 1000);
b = setInterval(imgDown, 100);
}
if (key == 50) {
start = true;
alert('일시정지! 다운받던이미지부터진행함 -> 다시1누르면됨');
clearInterval(a);
clearInterval(b);
}
}
\ No newline at end of file
Chrome
1. 확장프로그램 개발자 모드 ON
2. 압축해제된 확장 프로그램 로드
3. Chrome Crwaling 폴더 선택
4. 오른쪽 위에 경희대학교 마크가 뜸
5. 1을 누르면 다운로드 2를 누르면 정지
\ No newline at end of file