|
a |
|
b/code/gen_dataset.lua |
|
|
1 |
require 'torch'; |
|
|
2 |
require 'image'; |
|
|
3 |
|
|
|
4 |
folder = '/home/andrew/mitosis-detection' |
|
|
5 |
|
|
|
6 |
train_folder = paths.concat(folder,'mitosis-train') |
|
|
7 |
test_folder = paths.concat(folder,'mitosis-test') |
|
|
8 |
trainset = paths.concat(folder,'mitosis-train.t7') |
|
|
9 |
testset = paths.concat(folder,'mitosis-test.t7') |
|
|
10 |
|
|
|
11 |
function gen_dataset(data_folder, outfile) |
|
|
12 |
true_folder = paths.concat(data_folder,'true') |
|
|
13 |
false_folder = paths.concat(data_folder,'false') |
|
|
14 |
|
|
|
15 |
true_files = {} |
|
|
16 |
false_files = {} |
|
|
17 |
|
|
|
18 |
for file in paths.files(true_folder,'.png') do |
|
|
19 |
table.insert(true_files, paths.concat(true_folder,file)) |
|
|
20 |
end |
|
|
21 |
|
|
|
22 |
for file in paths.files(false_folder,'.png') do |
|
|
23 |
table.insert(false_files, paths.concat(false_folder,file)) |
|
|
24 |
end |
|
|
25 |
|
|
|
26 |
data = torch.ByteTensor(#true_files+#false_files,3,101,101) |
|
|
27 |
label = torch.ByteTensor(#true_files+#false_files) |
|
|
28 |
|
|
|
29 |
for i,file in ipairs(true_files) do |
|
|
30 |
print(i) |
|
|
31 |
data[{{i},{},{},{}}] = image.load(file,3,'byte') |
|
|
32 |
label[i] = 1 |
|
|
33 |
end |
|
|
34 |
|
|
|
35 |
for i,file in ipairs(false_files) do |
|
|
36 |
print(i + #true_files) |
|
|
37 |
data[{{i + #true_files},{},{},{}}] = image.load(file,3,'byte') |
|
|
38 |
label[i + #true_files] = 1 |
|
|
39 |
end |
|
|
40 |
|
|
|
41 |
dataset = {} |
|
|
42 |
dataset.data = data |
|
|
43 |
dataset.label = label |
|
|
44 |
|
|
|
45 |
torch.save(outfile, dataset) |
|
|
46 |
end |
|
|
47 |
|
|
|
48 |
gen_dataset(train_folder,trainset) |
|
|
49 |
gen_dataset(test_folder,testset) |