일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 인공지능
- Deep learning
- 확률
- openCV
- 김양재 목사님
- 주일설교
- node.js
- Statistics
- WebGL
- Artificial Intelligence
- Big Data
- probability
- No SQL
- 빅 데이타
- 빅데이타
- 딥러닝
- c++
- 김양재 목사
- 데이터 과학
- R
- 우리들교회
- 빅데이터
- data science
- 몽고디비
- Machine Learning
- 김양재
- nodeJS
- MongoDB
- 빅 데이터
- 통계
- Today
- Total
목록Scientific Computing/Image Processing (10)
Scientific Computing & Data Science
by Geol Choi | Jun. 25, 2017 R의 EBImage 라이브러리 패키지를 이용하여 랜덤 컬러 이미지 생성하는 법을 소개한다.EBImage 패키지 설치 및 로딩12345## try http:// if https:// URLs are not supportedsource("https://bioconductor.org/biocLite.R")biocLite("EBImage") base::require(EBImage)cs이미지 사이즈 정의12nWidth
이번 글에서는 R에서 병렬처리를 하는 방법에 대하여 소개하도록 한다.R-bloggers의 글, How-to go parallel in R - basics + tips의 내용을 최대한 참고하여 정리해 보았다. [목차]1. lapply에 대하여2. parallel 패키지3. foreach 패키지4. 디버깅5. 캐싱(Caching)6. 계산 부하 밸런싱7. 이미지 프로세싱 예제 1. lapply에 대하여R이 기본적으로 제공하는 함수들 중 가장 많이 사용되는 함수가 lapply일 것이다.이와 유사한 함수로 apply, sapply, tapply 등이 있는데 각자의 쓰임새가 있으며, 자신이 R유저라고 자신한다면 이 함수들이 어느 상황에 적절히 쓰이는지 이해하고 자유자재로 다룰 수 있어야 한다고 생각한다. 다음 코..
이번 글에서는 R을 이용하여 필기된 숫자가 포함된 이미지를 0과 1의 binary text 형식으로 변환하는 방법에 대하여 알아보겠다. 우선 R의 Image Processing Package인 EBImage를 다운로드한다. source("http://bioconductor.org/biocLite.R") biocLite("EBImage") 다음과 같이 필기된 숫자가 포함된 이미지를 0과 1의 binary text 형식으로 변환하는 R 함수를 작성하였다: #################################################################################################### # @function : ConvertImageToText # @author..
MATLAB CODE: "Laplacian.m" function Laplacian %% read an image img = imread('.\res\test_01.jpg'); img = rgb2gray(img); subplot(2,1,1); imshow(img); mask = [0 -1 0 ; -1 4 -1 ; 0 -1 0]; %mask = [1 1 1 ; 1 -8 1 ; 1 1 1]; %mask = [-1 -1 -1 ; -1 8 -1 ; -1 -1 -1]; [rSize, cSize] = size(mask); [nrow, ncol] = size(img); img = cast(img, 'double'); newImg = zeros(nrow,ncol); % Corners subMask = mask(2:3,2..
MATLAB CODE: "HomogeneityOperator.m" function HomogeneityOperator %% read an image img = imread('./res/test_02.jpg'); imshow(img); img = rgb2gray(img); subplot(2,1,1); [nrow, ncol] = size(img); img = cast(img, 'double'); newImg = zeros(nrow,ncol); % Corners i = 1; j = 1; tmp(1) = abs(img(i,j) - img(i,j+1)); tmp(2) = abs(img(i,j) - img(i+1,j+1)); tmp(3) = abs(img(i,j) - img(i+1,j)); newImg(i,j) =..
MATLAB CODE: "Sharpening.m"function Sharpening %% read an image img = imread('./res/test_02.jpg'); img = rgb2gray(img); subplot(2,1,1); imshow(img); %mask = [-1 -1 -1 ; -1 9 -1 ; -1 -1 -1]; mask = [0 -1 0 ; -1 5 -1 ; 0 -1 0]; [rSize, cSize] = size(mask); [nrow, ncol] = size(img); img = cast(img, 'double'); newImg = zeros(nrow,ncol); % Corners subMask = mask(2:3,2:3); i = 1; j = 1; subMat = img(i..
MATLAB CODE: "Gaussian.m"function Gaussian %% read an image img = imread('./res/test_02.jpg'); img = rgb2gray(img); subplot(2,1,1); imshow(img); mask = [1/16 1/8 1/16 ; 1/8 1/4 1/8 ; 1/16 1/8 1/16]; [rSize, cSize] = size(mask); [nrow, ncol] = size(img); img = cast(img, 'double'); newImg = zeros(nrow,ncol); % Corners subMask = mask(2:3,2:3); i = 1; j = 1; subMat = img(i:i+1,j:j+1); newImg(i,j) = ..
MATLAB CODE: "Blurring.m"function Blurring %% read an image img = imread('./res/test_01.jpg'); img = rgb2gray(img); subplot(2,1,1); imshow(img); mask = (1/9)*ones(3,3); [rSize, cSize] = size(mask); [nrow, ncol] = size(img); img = cast(img, 'double'); newImg = zeros(nrow,ncol); % Corners subMask = mask(2:3,2:3); i = 1; j = 1; subMat = img(i:i+1,j:j+1); newImg(i,j) = sum(sum(subMask.*subMat)); sub..
MATLAB CODE: "Embossing.m"function Embossing %% read an image img = imread('./res/test_01.jpg'); img = rgb2gray(img); subplot(2,1,1); imshow(img); mask = [-1 0 0 ; 0 0 0 ; 0 0 1]; [rSize, cSize] = size(mask); [nrow, ncol] = size(img); img = cast(img, 'double'); newImg = zeros(nrow,ncol); % Corners subMask = mask(2:3,2:3); i = 1; j = 1; subMat = img(i:i+1,j:j+1); newImg(i,j) = sum(sum(subMask.*su..
[Step 1]명암 값 j의 빈도 수 hist[j]를 계산하여 입력 영상의 히스토그램을 작성한다. [Step 2]각 명암 값 i에서 0~i까지의 누적 빈도 수(누적합)를 계산한다. [Step 3]2단계에서 구한 누적 빈도 수를 정규화한다(정규화 누적합).n[i] = sum[i] * Imax / NN: 화소의 총수Imax: 최대 명도 값 [MATLAB CODE]function Hist %% read an image img = imread('.\res\vectorc.jpg'); img = rgb2gray(img); [nrow, ncol] = size(img); subplot(1,2,1); imshow(img); %% vectorize img to tmp tmp = []; for(i = 1:nrow) tmp ..