Commit
·
0bbf37a
1
Parent(s):
5b16cb6
update
Browse files- vit_model_test.py +4 -34
vit_model_test.py
CHANGED
|
@@ -11,40 +11,9 @@ from sklearn.metrics import accuracy_score, precision_score, confusion_matrix, f
|
|
| 11 |
import matplotlib.pyplot as plt
|
| 12 |
import seaborn as sns
|
| 13 |
from sklearn.metrics import recall_score
|
|
|
|
| 14 |
|
| 15 |
-
def labeling(path_real, path_fake):
|
| 16 |
-
image_paths = []
|
| 17 |
-
labels = []
|
| 18 |
|
| 19 |
-
for filename in os.listdir(path_real):
|
| 20 |
-
image_paths.append(os.path.join(path_real, filename))
|
| 21 |
-
labels.append(0)
|
| 22 |
-
|
| 23 |
-
for filename in os.listdir(path_fake):
|
| 24 |
-
image_paths.append(os.path.join(path_fake, filename))
|
| 25 |
-
labels.append(1)
|
| 26 |
-
|
| 27 |
-
dataset = pd.DataFrame({'image_path': image_paths, 'label': labels})
|
| 28 |
-
|
| 29 |
-
return dataset
|
| 30 |
-
|
| 31 |
-
class CustomDataset(Dataset):
|
| 32 |
-
def __init__(self, dataframe, transform=None):
|
| 33 |
-
self.dataframe = dataframe
|
| 34 |
-
self.transform = transform
|
| 35 |
-
|
| 36 |
-
def __len__(self):
|
| 37 |
-
return len(self.dataframe)
|
| 38 |
-
|
| 39 |
-
def __getitem__(self, idx):
|
| 40 |
-
image_path = self.dataframe.iloc[idx, 0] # Image path is in the first column
|
| 41 |
-
image = Image.open(image_path).convert('RGB') # Convert to RGB format
|
| 42 |
-
|
| 43 |
-
if self.transform:
|
| 44 |
-
image = self.transform(image)
|
| 45 |
-
|
| 46 |
-
label = self.dataframe.iloc[idx, 1] # Label is in the second column
|
| 47 |
-
return image, label
|
| 48 |
|
| 49 |
def shuffle_and_split_data(dataframe, test_size=0.2, random_state=59):
|
| 50 |
# Shuffle the DataFrame
|
|
@@ -73,8 +42,9 @@ if __name__ == "__main__":
|
|
| 73 |
])
|
| 74 |
|
| 75 |
# Load the test dataset
|
| 76 |
-
test_real_folder = '
|
| 77 |
-
test_fake_folder = '
|
|
|
|
| 78 |
test_set = labeling(test_real_folder, test_fake_folder)
|
| 79 |
test_dataset = CustomDataset(test_set, transform=preprocess)
|
| 80 |
test_loader = DataLoader(test_dataset, batch_size=32)
|
|
|
|
| 11 |
import matplotlib.pyplot as plt
|
| 12 |
import seaborn as sns
|
| 13 |
from sklearn.metrics import recall_score
|
| 14 |
+
from vit_model_traning import labeling,CustomDataset
|
| 15 |
|
|
|
|
|
|
|
|
|
|
| 16 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 17 |
|
| 18 |
def shuffle_and_split_data(dataframe, test_size=0.2, random_state=59):
|
| 19 |
# Shuffle the DataFrame
|
|
|
|
| 42 |
])
|
| 43 |
|
| 44 |
# Load the test dataset
|
| 45 |
+
test_real_folder = 'datasets/test_set/real/'
|
| 46 |
+
test_fake_folder = 'datasets/test_set/fake/'
|
| 47 |
+
|
| 48 |
test_set = labeling(test_real_folder, test_fake_folder)
|
| 49 |
test_dataset = CustomDataset(test_set, transform=preprocess)
|
| 50 |
test_loader = DataLoader(test_dataset, batch_size=32)
|