Nothing
## ---- eval = T----------------------------------------------------------------
library(OpenImageR)
path = file.path(getwd(), 'vignette_1', 'image1.jpeg')
im = readImage(path)
dim(im)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
imageShow(im)
## ---- eval = F----------------------------------------------------------------
#
# writeImage(im, file_name = 'my_image.jpeg')
#
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
path = file.path(getwd(), 'vignette_1', 'image2.jpg')
im = readImage(path)
imageShow(im)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
r2g = rgb_2gray(im)
imageShow(r2g)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
eq_sp = cropImage(im, new_width = 200, new_height = 200, type = 'equal_spaced')
imageShow(eq_sp)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
us_def = cropImage(im, new_width = 20:225, new_height = 5:185, type = 'user_defined')
imageShow(us_def)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
path = file.path(getwd(), 'vignette_1', 'image1.jpeg')
im = readImage(path)
imageShow(im)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
flp_vert = flipImage(im, mode = 'horizontal')
imageShow(flp_vert)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
r270 = rotateFixed(im, 270)
imageShow(r270)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
r45 = rotateImage(im, 45, threads = 1)
imageShow(r45)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
path = file.path(getwd(), 'vignette_1', 'image2.jpg')
im = readImage(path)
intBl = resizeImage(im, width = 100, height = 100, method = 'bilinear', normalize_pixels = TRUE)
imageShow(intBl)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
intGbl = down_sample_image(im, factor = 2.5, gaussian_blur = T)
imageShow(intGbl)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
tr = translation(im, shift_rows = 50, shift_cols = -50)
imageShow(tr)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
path = file.path(getwd(), 'vignette_1', 'image1.jpeg')
im = readImage(path)
edsc = edge_detection(im, method = 'Scharr', conv_mode = 'same')
imageShow(edsc)
## ----echo = T, eval = T-------------------------------------------------------
kernel_size = c(4,4)
unf = uniform_filter(im, size = kernel_size, conv_mode = 'same')
unif_filt = matrix(1, ncol = kernel_size[1], nrow = kernel_size[2])/(kernel_size[1] * kernel_size[2])
unif_filt
## ----echo = F, eval = F-------------------------------------------------------
#
# # for some reason the following vignette example throws an error during checking. I tried all different ways I even added a similar test case
# # (see the 1st. test in the 'test-gamma_threshold.R' file). Set "eval = F" for this specific vignette example.
#
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = F--------------------
#
# path = file.path(getwd(), 'vignette_1', 'image2.jpg')
#
# im = readImage(path)
#
# thr = image_thresholding(im, thresh = 0.5) # if the input image is 3-dimensional it will be converted internally to a matrix
#
# imageShow(thr)
#
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
gcor = gamma_correction(im, gamma = 2) # show image with gamma correction
imageShow(gcor)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
res = ZCAwhiten(im, k = 20, epsilon = 0.1)
imageShow(res)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
res_delate = dilationErosion(im, Filter = c(8,8), method = 'dilation')
imageShow(res_delate)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
res_erosion = dilationErosion(im, Filter = c(8,8), method = 'erosion')
imageShow(res_erosion)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
path = file.path(getwd(), 'vignette_1', 'image1.jpeg')
im = readImage(path)
dim(im)
augm = Augmentation(im, flip_mode = 'horizontal', crop_width = 20:460, crop_height = 30:450,
resiz_width = 180, resiz_height = 180, resiz_method = 'bilinear',
shift_rows = 0, shift_cols = 0, rotate_angle = 350,
rotate_method = 'bilinear', zca_comps = 100,
zca_epsilon = 0.1, image_thresh = 0.0, verbose = T)
imageShow(augm)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
# random rotations
samp_rot = sample(c(seq(5, 90, 30), seq(270, 350, 30)), 3, replace = F)
# random shift of rows
samp_shif_rows = sample(seq(-50, 50, 10), 3, replace = F)
# random shift of columns
samp_shif_cols = sample(seq(-50, 50, 10), 3, replace = F)
res = lapply(1:length(samp_rot), function(x)
Augmentation(im, flip_mode = 'horizontal', crop_width = 20:460, crop_height = 30:450,
resiz_width = 180, resiz_height = 180, resiz_method = 'bilinear',
shift_rows = samp_shif_rows[x], shift_cols = samp_shif_cols[x],
rotate_angle = samp_rot[x], rotate_method = 'bilinear', zca_comps = 100,
zca_epsilon = 0.1, image_thresh = 0.0, verbose = F))
print(length(res))
imageShow(res[[1]])
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
imageShow(res[[2]])
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
imageShow(res[[3]])
## ---- eval = T----------------------------------------------------------------
path = file.path(getwd(), 'vignette_1', 'image2.jpg')
image = readImage(path)
image = image * 255
hog = HOG(image, cells = 3, orientations = 6)
hog
## ---- eval = T----------------------------------------------------------------
path_im1 = file.path(getwd(), 'vignette_1', 'image1.jpeg')
path_im2 = file.path(getwd(), 'vignette_1', 'image2.jpg')
tmp_im1 = readImage(path_im1)
tmp_im2 = readImage(path_im2)
tmp_im1 = resizeImage(tmp_im1, 200, 200, normalize_pixels = TRUE)
tmp_im2 = resizeImage(tmp_im2, 200, 200, normalize_pixels = TRUE)
tmp_gray1 = rgb_2gray(tmp_im1)
tmp_gray2 = rgb_2gray(tmp_im2)
dim(tmp_gray2)
tmp_arr = array(0, c(nrow(tmp_gray1), ncol(tmp_gray1), 2))
tmp_arr[,,1] = tmp_gray1
tmp_arr[,,2] = tmp_gray2
res = HOG_apply(tmp_arr, cells = 2, orientations = 3)
res
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
path = file.path(getwd(), 'vignette_1', 'view1.jpg')
image = readImage(path)
imageShow(image)
image = rgb_2gray(image)
aveg_hash = average_hash(image, hash_size = 8, MODE = 'hash', resize = "bilinear")
aveg_hash
aveg_bin = average_hash(image, hash_size = 8, MODE = 'binary', resize = "bilinear")
as.vector(aveg_bin)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
path = file.path(getwd(), 'vignette_1', 'view2.jpg')
image2 = readImage(path)
imageShow(image2)
image2 = rgb_2gray(image2)
ph_hash = phash(image2, hash_size = 8, highfreq_factor = 4, MODE = 'hash', resize = "bilinear")
ph_hash
ph_bin = phash(image2, hash_size = 8, highfreq_factor = 4, MODE = 'binary', resize = "bilinear")
as.vector(ph_bin)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
path = file.path(getwd(), 'vignette_1', 'view3.jpg')
image3 = readImage(path)
imageShow(image3)
image3a = rgb_2gray(image3)
dh_hash = dhash(image3a, hash_size = 8, MODE = 'hash', resize = "bilinear")
dh_hash
dh_bin = dhash(image3a, hash_size = 8, MODE = 'binary', resize = "bilinear")
as.vector(dh_bin)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
tmp_image3 = gamma_correction(image3, gamma = 0.5)
imageShow(tmp_image3)
tmp_image3 = rgb_2gray(tmp_image3)
dh_hash_a = dhash(tmp_image3, hash_size = 8, MODE = 'hash', resize = "bilinear")
dh_hash_a
dh_bin_a = dhash(tmp_image3, hash_size = 8, MODE = 'binary', resize = "bilinear")
as.vector(dh_bin_a)
## ----fig.width = 1.0, fig.height = 1.0, echo = T, eval = T--------------------
image3b = flipImage(image3, mode = "horizontal")
imageShow(image3b)
image3b = rgb_2gray(image3b)
dh_hash_b = dhash(image3b, hash_size = 8, MODE = 'hash', resize = "bilinear")
dh_hash_b
dh_bin_b = dhash(image3b, hash_size = 8, MODE = 'binary', resize = "bilinear")
as.vector(dh_bin_b)
## ---- eval = T----------------------------------------------------------------
inv_hash = invariant_hash(image3a, image3b, mode = 'binary', flip = T, rotate = T,
angle_bidirectional = 10, crop = T)
inv_hash
inv_bin = invariant_hash(image3a, image3b, mode = 'hash', flip = T, rotate = T,
angle_bidirectional = 10, crop = T)
inv_bin
## ---- eval = T----------------------------------------------------------------
path = paste0(getwd(), '/TEST_hash/')
hapl_hash = hash_apply(path, hash_size = 6, method = "dhash", mode = "hash", threads = 1, resize = "nearest")
hapl_hash # returns both the names of the images and the hash values
hapl_bin = hash_apply(path, hash_size = 6, method = "dhash", mode = "binary", threads = 1, resize = "nearest")
hapl_bin$files # names of the images
dim(hapl_bin$hash) # dimensions of the resulted matrix
head(hapl_bin$hash) # binary features
## ---- eval = T, echo = F------------------------------------------------------
# remove cache once vignettes are built
# unlink("The_OpenImageR_package_files", recursive = TRUE)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.