크롬을 사용하다 보면 일부 사이트에서 실명확인, 로그인, 선물하기 등 일부 기능이 레이어가 아닌 팝업을 이용하는 경우가 있어 필요한 사이트에 대한 팝업을 허용하거나 거부하는 방법을 알아 보겠습니다.

 


1. 설정 메뉴 선택


크롬 브라우저의 우측 상단에 로 점세개 아이콘을 클릭 하면 며뉴가 나오는데 하단 설정(S) 메뉴를 클릭 합니다.


google_chrome_팝업허용차단


설정 창으로 이동이 되었습니다.  이제는 좌측 상단 삼선 슬리퍼 모양의 아이콘을 클릭 합니다.


google_chrome_팝업허용차단



2. 고급 메뉴 선택


설정 메뉴 하단에 고급 이라는 메뉴가 있습니다클릭 해야죠.


google_chrome_팝업허용차단



3. 콘텐츠 메뉴 찾기

 

고급의 하부 메뉴 중 제일 처음에 있는 개인정보 및 보안을 선택 합니다. 


google_chrome_팝업허용차단


개인정보 및 보안 상세 항목이 많이 있는데 하단으로 이동을 합니다


google_chrome_팝업허용차단


그러면 끝부분에 콘텐츠 설정이 보이고 이것을 선택 합니다.

 


4. 팝업 설정 화면



google_chrome_팝업허용차단


리스트 중간쯤에 팝업 및 리디렉션 메뉴가 있습니다. 기본은 차단됨으로 설정이 되어있는데 이것을 클릭합니다

이제야 마지막 팝업 설정화면에 도달 했습니다.


google_chrome_팝업허용차단



5. 팝업 설정

 

위에 그림을 보면 설정 방법이 3가지가 있습니다.

1번은 어느 사이트건 무조건 팝업 사용이 가능합니다. 그래서 기본적으로 차단(권장)으로 설정 되어 있습니다.

2번은 1번을 전체 허용 한 경우 차단 하려는 사이트를 추가 하는 항목입니다.

3번은 1번을 전체 차단 한 경우 허용 하려는 사이트를 추가 하는 항목 입니다.

 

저는 3번 버튼을 클릭 했습니다.


google_chrome_팝업허용차단


팝업을 허용할 사이트 주소를 입력하고 추가 버튼을 클릭 합니다.


google_chrome_팝업허용차단


허용이 된 사이트 리스트를 볼 수 있습니다.

 

허용된 사이트를 삭제 하거나 주소를 잘못 기입한 경우에는 리스트 우측의 세로점 세개 아이콘을 클릭 하면 됩니다.


google_chrome_팝업허용차단

 

네이버는 차단을 선택했더니 차단 항목으로 이동이 되었습니다. 전체 차단 상태라 의미는 없습니다이런식으로 귀찮은 팝업이 없도록 잘 사용 하세요.

팝업을 허용하면 일부 사이트에서는 새창 열기 광고가 활성화 되는 경우도 있습니다꼭 팝업이 필요한 경우 허용해서 사용하고 다시 차단을 해놓으면 됩니다.



텐서플로우 튜터리얼 첫페이지에 나오는 소스를 이용해서 숫자 이미지를 불러와 맞추는 테스트를 해보았습니다.



1. MNIST 소스 코드

 

먼저 tensorflow tutorial 페이지를 방문해 봅니다.


https://www.tensorflow.org/tutorials


tensorflow_mnist_keras


이런식으로 우측에 소스가 보입니다.

 

소스를 긁어다가 실행을 해 봅니다.


tensorflow_mnist_keras


tensorflow_mnist_keras


98%의 정확도를 가지고 있습니다.


tensorflow_mnist_keras


작업관리자를 확인해 보니 CPU가 매일 탱자탱자 노는 모습에 울화가 치밀었는데 드디어 오늘 일하는 모습을 보게 되어 기쁩니다.



2. 숫자 이미지

 

이제 숫자 이미지를 준비해야 하는데 따로 준비하기가 귀찮아 MNIST 데이터에 있는 숫자 이미지를 하나 복사해서 사용하기로 했습니다.


tensorflow_mnist_keras



3. 테스트 결과

 

우선 결과 화면을 보면 다음과 같습니다.


tensorflow_mnist_keras


잘 맞추었습니다.



4. 소스 설명

 

4.1 작업 관련 library import


import tensorflow as tf

import matplotlib.pyplot as plt

from PIL import Image


4.2 MNIST 데이터


MNIST 데이터를 불러와서 traintest용으로 분류 합니다.


mnist = tf.keras.datasets.mnist

(x_train, y_train),(x_test, y_test) = mnist.load_data()

x_train, x_test = x_train / 255.0, x_test / 255.0


4.3 tk.keras model


모델을 정의하고 어떤식으로 학습을 진행 할지 컴파일 환경을 설정 합니다.


model = tf.keras.models.Sequential([

  tf.keras.layers.Flatten(),

  tf.keras.layers.Dense(512, activation=tf.nn.relu),

  tf.keras.layers.Dropout(0.2),

  tf.keras.layers.Dense(10, activation=tf.nn.softmax)

])

model.compile(optimizer='adam',

              loss='sparse_categorical_crossentropy',

              metrics=['accuracy']) 


4.4 훈련과 평가


model.fit(x_train, y_train, epochs=5)

score = model.evaluate(x_test, y_test) 


4.5 이미지 로딩


테스트를 진행할 이미지 한개를 불러와 규격에 맞춥니다.

여기서는 이미 규격화된 이미지라 사이즈 조정이 필요 없습니다.


test_num = plt.imread('F:/tensordata/number/58.png')

plt.imshow(test_num, cmap='Greys', interpolation='nearest');

test_num = test_num.reshape((1, 28, 28, 1)) 


4.6 예측

 

이미지를 이용하여 값을 예측하고 출력 합니다.


print('The Answer is ', model.predict_classes(test_num))

plt.show() 



5. 전체 소스


import tensorflow as tf

import matplotlib.pyplot as plt

from PIL import Image

 

mnist = tf.keras.datasets.mnist

(x_train, y_train),(x_test, y_test) = mnist.load_data()

x_train, x_test = x_train / 255.0, x_test / 255.0

 

model = tf.keras.models.Sequential([

  tf.keras.layers.Flatten(),

  tf.keras.layers.Dense(512, activation=tf.nn.relu),

  tf.keras.layers.Dropout(0.2),

  tf.keras.layers.Dense(10, activation=tf.nn.softmax)

])

model.compile(optimizer='adam',

              loss='sparse_categorical_crossentropy',

              metrics=['accuracy'])

 

model.fit(x_train, y_train, epochs=5)

score = model.evaluate(x_test, y_test)

 

############ 추가 소스 ##################

img = Image.open("F:/tensordata/number/58.png")

plt.imshow(img)

plt.show()

 

test_num = plt.imread('F:/tensordata/number/58.png')

 

plt.imshow(test_num, cmap='Greys', interpolation='nearest');

 

test_num = test_num.reshape((1, 28, 28, 1))

 

print('The Answer is ', model.predict_classes(test_num))

plt.show() 


- copy coding -


Keras를 이용하여 모델을 만들어 저장하고 다시 불러오는 코드에서 오류가 발생하였습니다아무래도 설치가 잘못 되었거나 환경 설정에 문제가 있는것 같은데 찾기가 쉽지는 않을것 같아 응급처리를 해서 작업을 하였습니다.

 


1. 오류 내용


오류는 여기에서 발생 했습니다.

loaded_model = model_from_json(loaded_model_json)


GlorotUniform_keras


ValueError : Unknown initializer: GlorotUniform 오류 발생


GlorotUniform_keras

 

좀 다른 형태로 불러와 보았습니다.

model = model_from_json(f.read())

 

역시 이렇게 해도 동일한 부분에 동일한 오류가 발생 합니다.

 


2. 해결 방법


오류 내용을 좀더 읽어 보니 모듈을 저장하는 부분에서 문제가 있는 듯 합니다.

keras가 아닌 tensorflow에 포함된 keras를 사용하는것 같습니다.

 

함수 model_from_json()의 전체 pathtensorflow로 잡아봤습니다.

loaded_model = tf.keras.models.model_from_json(loaded_model_json)

 

오류 없이 잘 작동이 됩니다.



DtsMainProcDreanTong이라는 곳에서 만든 인터넷 익스플로러 광고 팝업을 발생시키는 프로그램으로 알려져 있습니다새창이 계속 한번에 몇 개씩 생성이 되어 인터넷 검색을 방해하고 자원도 갉아먹는 프로그램으로 삭제를 권장 합니다.

 

 

1. DtsMainProc 설치 확인

 

DtsMainProc 프로그램이 설치되어 있는지 확인 하기 위하여 Windows 작업 관리자를 실행 합니다마우스를 모니터 하단 작업 표시줄에 놓고 우측 버튼을 클릭한 후 작업 관리자 시작(K)을 선택 합니다.


DtsMainProc_delete


Windows 작업 관리자에서 프로세스 탭을 클릭 하여 DtsMainProc가 실행 중인지 확인해 봅니다.


DtsMainProc_delete


설치가 잘 되어 있군요.


DtsMainProc_delete


DtsMainProc.exe에 마우스를 대고 우측 버튼을 클릭하면 팝업 메뉴가 나오는데 여기서 파일 위치 열기(O)를 선택 합니다.


DtsMainProc_delete


폴더에 프로그램이 있군요. 그리고 Uninstall 폴더가 보이는데 이곳으로 이동을 해볼까요?


DtsMainProc_delete


Unistatll.exe도 있습니다. 실행해서 삭제를 시도해 봅니다.


DtsMainProc_delete


얘는 쉽게 물러서지 않을 것 같습니다.

 

다른 방법을 찾아야 겠습니다. 다시 Windows 작업 관리자로 돌아갑니다.


DtsMainProc_delete


DtsMainProc.exe를 선택 하고 프로세스 끝내기 버튼을 클릭 합니다.



2. 레지스트리 삭제

 

이제 레지스트리 내용을 지워야 합니다.

시작버튼을 눌러 프로그램 및 파일 검색에서 검색을 합니다.


DtsMainProc_delete


regedit을 입력해서 레지스트리 편집기를 실행 시킵니다.


DtsMainProc_delete


상단 메뉴

편집 > 찾기

를 이용하여 DreamTong 검색 키워드를 입력 하고 검색 합니다


DtsMainProc_delete


DtsMainProc_delete


검색이 되었습니다.


DtsMainProc_delete


키보드 Delete 키를 이용하여 좌측에 있는 DreamTong 폴더를 삭제 합니다.


DtsMainProc_delete


하나를 삭제하는 것으로 끝나는게 아니고 레지스트리에는 여러 곳에 등록이 되기 때문에 F3키를 눌러 다른 곳에 있는 DreanTong 관련 등록 정보를 찾아 줍니다.


DtsMainProc_delete


이런식으로 동일한 방법을 이용하여 찾기와 삭제를 반복 해줍니다.


DtsMainProc_delete


F3를 이용해 지우다 보면 Windows Internet Explorer Smart Service가 나오는데 이것도 지워버립니다.


DtsMainProc_delete


이런식으로 디렉토리 또는 키값들을 삭제하고 F3(찾기)에서 검색이 안될 때 까지 진행합니다.

 


3. 폴더 삭제


레지스트리 작업이 완료 되면 DtsMainProc.exe파일과 uninstall 폴더가 있었던 DreamTong 폴더를 삭제해 줍니다.


DtsMainProc_delete


다른 광고 프로그램이 없다면 이제 팝업 광고도 사라졌을 것 입니다.



1···91929394959697···118

+ Recent posts